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

Function checkDeferredNode

test/fixtures/snapshot/typescript.js:85875–85916  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

85873 }
85874 }
85875 function checkDeferredNode(node) {
85876 ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.push("check" /* tracing.Phase.Check */, "checkDeferredNode", { kind: node.kind, pos: node.pos, end: node.end, path: node.tracingPath });
85877 var saveCurrentNode = currentNode;
85878 currentNode = node;
85879 instantiationCount = 0;
85880 switch (node.kind) {
85881 case 208 /* SyntaxKind.CallExpression */:
85882 case 209 /* SyntaxKind.NewExpression */:
85883 case 210 /* SyntaxKind.TaggedTemplateExpression */:
85884 case 165 /* SyntaxKind.Decorator */:
85885 case 280 /* SyntaxKind.JsxOpeningElement */:
85886 // These node kinds are deferred checked when overload resolution fails
85887 // To save on work, we ensure the arguments are checked just once, in
85888 // a deferred way
85889 resolveUntypedCall(node);
85890 break;
85891 case 213 /* SyntaxKind.FunctionExpression */:
85892 case 214 /* SyntaxKind.ArrowFunction */:
85893 case 169 /* SyntaxKind.MethodDeclaration */:
85894 case 168 /* SyntaxKind.MethodSignature */:
85895 checkFunctionExpressionOrObjectLiteralMethodDeferred(node);
85896 break;
85897 case 172 /* SyntaxKind.GetAccessor */:
85898 case 173 /* SyntaxKind.SetAccessor */:
85899 checkAccessorDeclaration(node);
85900 break;
85901 case 226 /* SyntaxKind.ClassExpression */:
85902 checkClassExpressionDeferred(node);
85903 break;
85904 case 163 /* SyntaxKind.TypeParameter */:
85905 checkTypeParameterDeferred(node);
85906 break;
85907 case 279 /* SyntaxKind.JsxSelfClosingElement */:
85908 checkJsxSelfClosingElementDeferred(node);
85909 break;
85910 case 278 /* SyntaxKind.JsxElement */:
85911 checkJsxElementDeferred(node);
85912 break;
85913 }
85914 currentNode = saveCurrentNode;
85915 ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.pop();
85916 }
85917 function checkSourceFile(node) {
85918 ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.push("check" /* tracing.Phase.Check */, "checkSourceFile", { path: node.path }, /*separateBeginAndEnd*/ true);
85919 ts.performance.mark("beforeCheck");

Callers

nothing calls this directly

Calls 9

resolveUntypedCallFunction · 0.85
checkAccessorDeclarationFunction · 0.85
checkJsxElementDeferredFunction · 0.85
popMethod · 0.80
pushMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…