| parseUnit(main) | |
| skipErrorTokens(main) | |
| listener: beginCompilationUnit(main) | |
| syntheticPreviousToken(main) | |
| parseTopLevelDeclarationImpl(, DirectiveContext(DirectiveState.Unknown)) | |
| parseMetadataStar() | |
| listener: beginMetadataStar(main) | |
| listener: endMetadataStar(0) | |
| parseTopLevelMemberImpl() | |
| listener: beginTopLevelMember(main) | |
| isReservedKeyword(() | |
| parseTopLevelMethod(, null, null, , NoType(), null, main, false) | |
| listener: beginTopLevelMethod(, null, null) | |
| listener: handleNoType() | |
| ensureIdentifierPotentiallyRecovered(, topLevelFunctionDeclaration, false) | |
| listener: handleIdentifier(main, topLevelFunctionDeclaration) | |
| parseMethodTypeVar(main) | |
| listener: handleNoTypeVariables(() | |
| parseGetterOrFormalParameters(main, main, false, MemberKind.TopLevelMethod) | |
| parseFormalParameters(main, MemberKind.TopLevelMethod) | |
| parseFormalParametersRest((, MemberKind.TopLevelMethod) | |
| listener: beginFormalParameters((, MemberKind.TopLevelMethod) | |
| listener: endFormalParameters(0, (, ), MemberKind.TopLevelMethod) | |
| parseAsyncModifierOpt()) | |
| listener: handleAsyncModifier(null, null) | |
| inPlainSync() | |
| parseFunctionBody(), false, false) | |
| listener: beginBlockFunctionBody({) | |
| notEofOrValue(}, () | |
| parseStatement({) | |
| parseStatementX({) | |
| parseExpressionStatementOrDeclaration({, null) | |
| parseExpressionStatementOrDeclarationAfterModifiers({, {, null, null, null, null) | |
| looksLikeLocalFunction(() | |
| parseExpressionStatement({) | |
| parseExpression({) | |
| parsePrecedenceExpression({, 1, true, ConstantPatternContext.none) | |
| parseUnaryExpression({, true, ConstantPatternContext.none) | |
| parsePrimary({, expression, ConstantPatternContext.none) | |
| parseParenthesizedExpressionFunctionLiteralOrRecordLiteral({, ConstantPatternContext.none) | |
| listener: handleNoTypeVariables(() | |
| parseFunctionExpression({) | |
| listener: beginFunctionExpression(() | |
| parseFormalParametersRequiredOpt({, MemberKind.Local) | |
| parseFormalParametersRest((, MemberKind.Local) | |
| listener: beginFormalParameters((, MemberKind.Local) | |
| listener: endFormalParameters(0, (, ), MemberKind.Local) | |
| parseAsyncOptBody(), true, false) | |
| parseAsyncModifierOpt()) | |
| listener: handleAsyncModifier(null, null) | |
| inPlainSync() | |
| parseFunctionBody(), true, false) | |
| listener: beginBlockFunctionBody({) | |
| notEofOrValue(}, }) | |
| listener: endBlockFunctionBody(0, {, }) | |
| listener: endFunctionExpression((, }) | |
| ensureSemicolon(}) | |
| listener: handleExpressionStatement((, ;) | |
| notEofOrValue(}, }) | |
| listener: endBlockFunctionBody(1, {, }) | |
| listener: endTopLevelMethod(main, null, }) | |
| listener: endTopLevelDeclaration(}) | |
| reportAllErrorTokens(main) | |
| listener: endCompilationUnit(1, ) |