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

Function parseStatement

test/fixtures/snapshot/typescript.js:36265–36335  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

36263 return lookAhead(nextTokenIsBindingIdentifierOrStartOfDestructuring);
36264 }
36265 function parseStatement() {
36266 switch (token()) {
36267 case 26 /* SyntaxKind.SemicolonToken */:
36268 return parseEmptyStatement();
36269 case 18 /* SyntaxKind.OpenBraceToken */:
36270 return parseBlock(/*ignoreMissingOpenBrace*/ false);
36271 case 113 /* SyntaxKind.VarKeyword */:
36272 return parseVariableStatement(getNodePos(), hasPrecedingJSDocComment(), /*decorators*/ undefined, /*modifiers*/ undefined);
36273 case 119 /* SyntaxKind.LetKeyword */:
36274 if (isLetDeclaration()) {
36275 return parseVariableStatement(getNodePos(), hasPrecedingJSDocComment(), /*decorators*/ undefined, /*modifiers*/ undefined);
36276 }
36277 break;
36278 case 98 /* SyntaxKind.FunctionKeyword */:
36279 return parseFunctionDeclaration(getNodePos(), hasPrecedingJSDocComment(), /*decorators*/ undefined, /*modifiers*/ undefined);
36280 case 84 /* SyntaxKind.ClassKeyword */:
36281 return parseClassDeclaration(getNodePos(), hasPrecedingJSDocComment(), /*decorators*/ undefined, /*modifiers*/ undefined);
36282 case 99 /* SyntaxKind.IfKeyword */:
36283 return parseIfStatement();
36284 case 90 /* SyntaxKind.DoKeyword */:
36285 return parseDoStatement();
36286 case 115 /* SyntaxKind.WhileKeyword */:
36287 return parseWhileStatement();
36288 case 97 /* SyntaxKind.ForKeyword */:
36289 return parseForOrForInOrForOfStatement();
36290 case 86 /* SyntaxKind.ContinueKeyword */:
36291 return parseBreakOrContinueStatement(245 /* SyntaxKind.ContinueStatement */);
36292 case 81 /* SyntaxKind.BreakKeyword */:
36293 return parseBreakOrContinueStatement(246 /* SyntaxKind.BreakStatement */);
36294 case 105 /* SyntaxKind.ReturnKeyword */:
36295 return parseReturnStatement();
36296 case 116 /* SyntaxKind.WithKeyword */:
36297 return parseWithStatement();
36298 case 107 /* SyntaxKind.SwitchKeyword */:
36299 return parseSwitchStatement();
36300 case 109 /* SyntaxKind.ThrowKeyword */:
36301 return parseThrowStatement();
36302 case 111 /* SyntaxKind.TryKeyword */:
36303 // Include 'catch' and 'finally' for error recovery.
36304 // falls through
36305 case 83 /* SyntaxKind.CatchKeyword */:
36306 case 96 /* SyntaxKind.FinallyKeyword */:
36307 return parseTryStatement();
36308 case 87 /* SyntaxKind.DebuggerKeyword */:
36309 return parseDebuggerStatement();
36310 case 59 /* SyntaxKind.AtToken */:
36311 return parseDeclaration();
36312 case 131 /* SyntaxKind.AsyncKeyword */:
36313 case 118 /* SyntaxKind.InterfaceKeyword */:
36314 case 152 /* SyntaxKind.TypeKeyword */:
36315 case 141 /* SyntaxKind.ModuleKeyword */:
36316 case 142 /* SyntaxKind.NamespaceKeyword */:
36317 case 135 /* SyntaxKind.DeclareKeyword */:
36318 case 85 /* SyntaxKind.ConstKeyword */:
36319 case 92 /* SyntaxKind.EnumKeyword */:
36320 case 93 /* SyntaxKind.ExportKeyword */:
36321 case 100 /* SyntaxKind.ImportKeyword */:
36322 case 121 /* SyntaxKind.PrivateKeyword */:

Callers 5

parseIfStatementFunction · 0.85
parseDoStatementFunction · 0.85
parseWhileStatementFunction · 0.85

Calls 15

parseEmptyStatementFunction · 0.85
parseBlockFunction · 0.85
parseVariableStatementFunction · 0.85
getNodePosFunction · 0.85
hasPrecedingJSDocCommentFunction · 0.85
isLetDeclarationFunction · 0.85
parseFunctionDeclarationFunction · 0.85
parseClassDeclarationFunction · 0.85
parseIfStatementFunction · 0.85
parseDoStatementFunction · 0.85
parseWhileStatementFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…