MCPcopy Index your code
hub / github.com/nodejs/node / elaborateError

Function elaborateError

test/fixtures/snapshot/typescript.js:63898–63926  ·  view source on GitHub ↗
(node, source, target, relation, headMessage, containingMessageChain, errorOutputContainer)

Source from the content-addressed store, hash-verified

63896 return !!(type.flags & 16777216 /* TypeFlags.Conditional */ || (type.flags & 2097152 /* TypeFlags.Intersection */ && ts.some(type.types, isOrHasGenericConditional)));
63897 }
63898 function elaborateError(node, source, target, relation, headMessage, containingMessageChain, errorOutputContainer) {
63899 if (!node || isOrHasGenericConditional(target))
63900 return false;
63901 if (!checkTypeRelatedTo(source, target, relation, /*errorNode*/ undefined)
63902 && elaborateDidYouMeanToCallOrConstruct(node, source, target, relation, headMessage, containingMessageChain, errorOutputContainer)) {
63903 return true;
63904 }
63905 switch (node.kind) {
63906 case 288 /* SyntaxKind.JsxExpression */:
63907 case 212 /* SyntaxKind.ParenthesizedExpression */:
63908 return elaborateError(node.expression, source, target, relation, headMessage, containingMessageChain, errorOutputContainer);
63909 case 221 /* SyntaxKind.BinaryExpression */:
63910 switch (node.operatorToken.kind) {
63911 case 63 /* SyntaxKind.EqualsToken */:
63912 case 27 /* SyntaxKind.CommaToken */:
63913 return elaborateError(node.right, source, target, relation, headMessage, containingMessageChain, errorOutputContainer);
63914 }
63915 break;
63916 case 205 /* SyntaxKind.ObjectLiteralExpression */:
63917 return elaborateObjectLiteral(node, source, target, relation, containingMessageChain, errorOutputContainer);
63918 case 204 /* SyntaxKind.ArrayLiteralExpression */:
63919 return elaborateArrayLiteral(node, source, target, relation, containingMessageChain, errorOutputContainer);
63920 case 286 /* SyntaxKind.JsxAttributes */:
63921 return elaborateJsxComponents(node, source, target, relation, containingMessageChain, errorOutputContainer);
63922 case 214 /* SyntaxKind.ArrowFunction */:
63923 return elaborateArrowFunction(node, source, target, relation, containingMessageChain, errorOutputContainer);
63924 }
63925 return false;
63926 }
63927 function elaborateDidYouMeanToCallOrConstruct(node, source, target, relation, headMessage, containingMessageChain, errorOutputContainer) {
63928 var callSignatures = getSignaturesOfType(source, 0 /* SignatureKind.Call */);
63929 var constructSignatures = getSignaturesOfType(source, 1 /* SignatureKind.Construct */);

Callers 3

elaborateArrowFunctionFunction · 0.85
elaborateElementwiseFunction · 0.85

Calls 7

checkTypeRelatedToFunction · 0.85
elaborateObjectLiteralFunction · 0.85
elaborateArrayLiteralFunction · 0.85
elaborateJsxComponentsFunction · 0.85
elaborateArrowFunctionFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…