| parseUnit(class) | |
| skipErrorTokens(class) | |
| listener: beginCompilationUnit(class) | |
| syntheticPreviousToken(class) | |
| parseTopLevelDeclarationImpl(, DirectiveContext(DirectiveState.Unknown)) | |
| parseMetadataStar() | |
| listener: beginMetadataStar(class) | |
| listener: endMetadataStar(0) | |
| parseTopLevelKeywordDeclaration(class, , class, null, null, null, null, DirectiveContext(DirectiveState.Unknown)) | |
| parseClassOrNamedMixinApplication(class, null, null, null, null, null, null, null, null, class) | |
| listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) | |
| ensureIdentifier(class, classOrMixinDeclaration) | |
| listener: handleIdentifier(C, classOrMixinDeclaration) | |
| listener: handleNoTypeVariables({) | |
| listener: beginClassDeclaration(class, null, null, null, null, null, null, null, null, C) | |
| parseClass(C, class, class, C) | |
| parseClassHeaderOpt(C, class, class) | |
| parseClassExtendsOpt(C, DeclarationHeaderKind.Class) | |
| listener: handleNoType(C) | |
| listener: handleClassExtends(null, 1) | |
| parseClassWithClauseOpt(C) | |
| listener: handleClassNoWithClause() | |
| parseClassOrMixinOrEnumImplementsOpt(C) | |
| listener: handleImplements(null, 0) | |
| listener: handleClassHeader(class, class, null) | |
| parseClassOrMixinOrExtensionBody(C, DeclarationKind.Class, C) | |
| listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) | |
| notEofOrValue(}, C) | |
| parseClassOrMixinOrExtensionOrEnumMemberImpl({, DeclarationKind.Class, C) | |
| parseMetadataStar({) | |
| listener: beginMetadataStar(C) | |
| listener: endMetadataStar(0) | |
| listener: beginMember() | |
| recoverFromInvalidMember(>, {, null, null, null, null, null, null, null, {, ComplexTypeInfo(start: C, typeArguments: ComplexTypeParamOrArgInfo(start: <, inDeclaration: true, allowsVariance: false, typeArgumentCount: 0, skipEnd: >, recovered: true), beforeQuestionMark: null, end: >, typeVariableStarters: [], gftHasReturnType: null, isRecordType: false, gftReturnTypeHasRecordType: false, recovered: true), null, DeclarationKind.Class, C) | |
| parseFields({, null, null, null, null, null, null, null, {, ComplexTypeInfo(start: C, typeArguments: ComplexTypeParamOrArgInfo(start: <, inDeclaration: true, allowsVariance: false, typeArgumentCount: 0, skipEnd: >, recovered: true), beforeQuestionMark: null, end: >, typeVariableStarters: [], gftHasReturnType: null, isRecordType: false, gftReturnTypeHasRecordType: false, recovered: true), }, DeclarationKind.Class, C, false) | |
| listener: beginFields(DeclarationKind.Class, null, null, null, null, null, null, null, {) | |
| ensureIdentifier({, typeReference) | |
| listener: handleIdentifier(C, typeReference) | |
| listener: beginTypeArguments(<) | |
| reportRecoverableErrorWithToken(}, Template(ExpectedType)) | |
| listener: handleRecoverableError(Message[ExpectedType, Expected a type, but got '}'., null, {lexeme: }}], }, }) | |
| rewriter() | |
| listener: handleIdentifier(, typeReference) | |
| listener: handleNoTypeArguments(}) | |
| listener: handleType(, null) | |
| listener: endTypeArguments(1, <, >) | |
| listener: handleType(C, null) | |
| ensureIdentifierPotentiallyRecovered(>, fieldDeclaration, false) | |
| insertSyntheticIdentifier(>, fieldDeclaration, message: null, messageOnToken: null) | |
| reportRecoverableError(}, Message[ExpectedIdentifier, Expected an identifier, but got '}'., Try inserting an identifier before '}'., {lexeme: }}]) | |
| listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got '}'., Try inserting an identifier before '}'., {lexeme: }}], }, }) | |
| rewriter() | |
| listener: handleIdentifier(, fieldDeclaration) | |
| parseFieldInitializerOpt(, , null, null, null, null, null, DeclarationKind.Class, C) | |
| listener: handleNoFieldInitializer(}) | |
| ensureSemicolon() | |
| reportRecoverableError(<, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
| listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], <, <) | |
| rewriter() | |
| listener: endClassFields(null, null, null, null, null, null, null, 1, C, ;) | |
| listener: endMember() | |
| notEofOrValue(}, }) | |
| listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 1, {, }) | |
| listener: endClassDeclaration(class, }) | |
| listener: endTopLevelDeclaration(main) | |
| parseTopLevelDeclarationImpl(}, DirectiveContext(DirectiveState.Declarations)) | |
| 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(}, C) | |
| parseStatement({) | |
| parseStatementX({) | |
| parseExpressionStatementOrDeclarationAfterModifiers({, {, null, null, null, null) | |
| looksLikeLocalFunction(C) | |
| parseExpressionStatement({) | |
| parseExpression({) | |
| parsePrecedenceExpression({, 1, true, ConstantPatternContext.none) | |
| parseUnaryExpression({, true, ConstantPatternContext.none) | |
| parsePrimary({, expression, ConstantPatternContext.none) | |
| parseSendOrFunctionLiteral({, expression, ConstantPatternContext.none) | |
| parseSend({, expression, ConstantPatternContext.none) | |
| isNextIdentifier({) | |
| ensureIdentifier({, expression) | |
| listener: handleIdentifier(C, expression) | |
| listener: handleNoTypeArguments(<) | |
| parseArgumentsOpt(C) | |
| listener: handleNoArguments(<) | |
| listener: handleSend(C, <) | |
| listener: beginBinaryExpression(<) | |
| parsePrecedenceExpression(<, 9, true, ConstantPatternContext.none) | |
| parseUnaryExpression(<, true, ConstantPatternContext.none) | |
| parsePrimary(<, expression, ConstantPatternContext.none) | |
| parseSend(<, expression, ConstantPatternContext.none) | |
| isNextIdentifier(<) | |
| ensureIdentifier(<, expression) | |
| reportRecoverableErrorWithToken(}, Template(ExpectedIdentifier)) | |
| listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got '}'., Try inserting an identifier before '}'., {lexeme: }}], }, }) | |
| rewriter() | |
| listener: handleIdentifier(, expression) | |
| listener: handleNoTypeArguments(}) | |
| parseArgumentsOpt() | |
| listener: handleNoArguments(}) | |
| listener: handleSend(, }) | |
| listener: endBinaryExpression(<) | |
| ensureSemicolon() | |
| reportRecoverableError(<, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
| listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], <, <) | |
| rewriter() | |
| listener: handleExpressionStatement(;) | |
| notEofOrValue(}, }) | |
| listener: endBlockFunctionBody(1, {, }) | |
| listener: endTopLevelMethod(main, null, }) | |
| listener: endTopLevelDeclaration() | |
| reportAllErrorTokens(class) | |
| listener: endCompilationUnit(2, ) |