| 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(}, try) | |
| parseStatement({) | |
| parseStatementX({) | |
| parseTryStatement({) | |
| listener: beginTryStatement(try) | |
| parseBlock(try, BlockKind(try statement)) | |
| ensureBlock(try, BlockKind(try statement)) | |
| listener: beginBlock({, BlockKind(try statement)) | |
| notEofOrValue(}, }) | |
| listener: endBlock(0, {, }, BlockKind(try statement)) | |
| listener: beginCatchClause(catch) | |
| parseFormalParameters(catch, MemberKind.Catch) | |
| parseFormalParametersRest((, MemberKind.Catch) | |
| listener: beginFormalParameters((, MemberKind.Catch) | |
| parseFormalParameter((, FormalParameterKind.requiredPositional, MemberKind.Catch) | |
| parseMetadataStar(() | |
| listener: beginMetadataStar(e) | |
| listener: endMetadataStar(0) | |
| listener: beginFormalParameter(e, MemberKind.Catch, null, null, null) | |
| listener: handleNoType(() | |
| ensureIdentifier((, formalParameterDeclaration) | |
| listener: handleIdentifier(e, formalParameterDeclaration) | |
| listener: handleFormalParameterWithoutValue(,) | |
| listener: endFormalParameter(null, null, null, e, null, null, FormalParameterKind.requiredPositional, MemberKind.Catch) | |
| parseFormalParameter(,, FormalParameterKind.requiredPositional, MemberKind.Catch) | |
| parseMetadataStar(,) | |
| listener: beginMetadataStar(s) | |
| listener: endMetadataStar(0) | |
| listener: beginFormalParameter(s, MemberKind.Catch, null, null, null) | |
| listener: handleNoType(,) | |
| ensureIdentifier(,, formalParameterDeclaration) | |
| listener: handleIdentifier(s, formalParameterDeclaration) | |
| listener: handleFormalParameterWithoutValue()) | |
| listener: endFormalParameter(null, null, null, s, null, null, FormalParameterKind.requiredPositional, MemberKind.Catch) | |
| listener: endFormalParameters(2, (, ), MemberKind.Catch) | |
| listener: endCatchClause({) | |
| parseBlock(), BlockKind(catch clause)) | |
| ensureBlock(), BlockKind(catch clause)) | |
| listener: beginBlock({, BlockKind(catch clause)) | |
| notEofOrValue(}, }) | |
| listener: endBlock(0, {, }, BlockKind(catch clause)) | |
| listener: handleCatchBlock(null, catch, ,) | |
| listener: endTryStatement(1, try, null, }) | |
| notEofOrValue(}, }) | |
| listener: endBlockFunctionBody(1, {, }) | |
| listener: endTopLevelMethod(main, null, }) | |
| listener: endTopLevelDeclaration(}) | |
| reportAllErrorTokens(main) | |
| listener: endCompilationUnit(1, ) |