| parseUnit(test) | |
| skipErrorTokens(test) | |
| listener: beginCompilationUnit(test) | |
| syntheticPreviousToken(test) | |
| parseTopLevelDeclarationImpl(, DirectiveContext(DirectiveState.Unknown)) | |
| parseMetadataStar() | |
| listener: beginMetadataStar(test) | |
| listener: endMetadataStar(0) | |
| parseTopLevelMemberImpl() | |
| listener: beginTopLevelMember(test) | |
| isReservedKeyword(() | |
| parseTopLevelMethod(, null, null, , NoType(), null, test, false) | |
| listener: beginTopLevelMethod(, null, null) | |
| listener: handleNoType() | |
| ensureIdentifierPotentiallyRecovered(, topLevelFunctionDeclaration, false) | |
| listener: handleIdentifier(test, topLevelFunctionDeclaration) | |
| parseMethodTypeVar(test) | |
| listener: handleNoTypeVariables(() | |
| parseGetterOrFormalParameters(test, test, false, MemberKind.TopLevelMethod) | |
| parseFormalParameters(test, MemberKind.TopLevelMethod) | |
| parseFormalParametersRest((, MemberKind.TopLevelMethod) | |
| listener: beginFormalParameters((, MemberKind.TopLevelMethod) | |
| parseFormalParameter((, FormalParameterKind.requiredPositional, MemberKind.TopLevelMethod) | |
| parseMetadataStar(() | |
| listener: beginMetadataStar(dynamic) | |
| listener: endMetadataStar(0) | |
| listener: beginFormalParameter(dynamic, MemberKind.TopLevelMethod, null, null, null) | |
| listener: handleIdentifier(dynamic, typeReference) | |
| listener: handleNoTypeArguments(x) | |
| listener: handleType(dynamic, null) | |
| ensureIdentifier(dynamic, formalParameterDeclaration) | |
| listener: handleIdentifier(x, formalParameterDeclaration) | |
| listener: handleFormalParameterWithoutValue()) | |
| listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.requiredPositional, MemberKind.TopLevelMethod) | |
| listener: endFormalParameters(1, (, ), MemberKind.TopLevelMethod) | |
| parseAsyncModifierOpt()) | |
| listener: handleAsyncModifier(null, null) | |
| inPlainSync() | |
| parseFunctionBody(), false, false) | |
| listener: beginBlockFunctionBody({) | |
| notEofOrValue(}, switch) | |
| parseStatement({) | |
| parseStatementX({) | |
| parseSwitchStatement({) | |
| listener: beginSwitchStatement(switch) | |
| ensureParenthesizedCondition(switch, allowCase: false) | |
| parseExpressionInParenthesisRest((, allowCase: false) | |
| parseExpression(() | |
| looksLikeOuterPatternEquals(() | |
| skipOuterPattern(() | |
| skipObjectPatternRest(x) | |
| 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(x, expression) | |
| listener: handleNoTypeArguments()) | |
| parseArgumentsOpt(x) | |
| listener: handleNoArguments()) | |
| listener: handleSend(x, x) | |
| ensureCloseParen(x, () | |
| listener: handleParenthesizedCondition((, null, null) | |
| parseSwitchBlock()) | |
| ensureBlock(), BlockKind(switch statement)) | |
| listener: beginSwitchBlock({) | |
| notEofOrValue(}, case) | |
| peekPastLabels(case) | |
| listener: beginCaseExpression(case) | |
| parsePattern(case, PatternContext.matching, precedence: 1) | |
| listener: beginPattern(case) | |
| parsePrimaryPattern(case, PatternContext.matching) | |
| listener: beginConstantPattern(const) | |
| parsePrecedenceExpression(const, 7, false, ConstantPatternContext.explicit) | |
| parseUnaryExpression(const, false, ConstantPatternContext.explicit) | |
| parsePrimary(const, expression, ConstantPatternContext.explicit) | |
| parseSendOrFunctionLiteral(const, expression, ConstantPatternContext.explicit) | |
| looksLikeFunctionBody(:) | |
| parseSend(const, expression, ConstantPatternContext.explicit) | |
| isNextIdentifier(const) | |
| ensureIdentifier(const, expression) | |
| listener: handleIdentifier(Foo, expression) | |
| listener: handleNoTypeArguments(() | |
| parseArgumentsOpt(Foo) | |
| parseArguments(Foo) | |
| parseArgumentsRest(() | |
| listener: beginArguments(() | |
| parseExpression(() | |
| looksLikeOuterPatternEquals(() | |
| skipOuterPattern(() | |
| parsePrecedenceExpression((, 1, true, ConstantPatternContext.none) | |
| parseUnaryExpression((, true, ConstantPatternContext.none) | |
| parsePrimary((, expression, ConstantPatternContext.none) | |
| parseLiteralInt(() | |
| listener: handleLiteralInt(1) | |
| listener: endArguments(1, (, )) | |
| listener: handleSend(Foo, )) | |
| listener: endConstantPattern(const) | |
| listener: endPattern()) | |
| listener: handleSwitchCaseNoWhenClause()) | |
| ensureColon()) | |
| listener: endCaseExpression(case, null, :) | |
| peekPastLabels(break) | |
| parseStatementsInSwitchCase(:, break, case, 0, 1, null, null) | |
| listener: beginSwitchCase(0, 1, case) | |
| parseStatement(:) | |
| parseStatementX(:) | |
| parseBreakStatement(:) | |
| isBreakAllowed() | |
| ensureSemicolon(break) | |
| listener: handleBreakStatement(false, break, ;) | |
| peekPastLabels(}) | |
| listener: endSwitchCase(0, 1, null, null, 1, case, ;) | |
| notEofOrValue(}, }) | |
| listener: endSwitchBlock(1, {, }) | |
| listener: endSwitchStatement(switch, }) | |
| notEofOrValue(}, }) | |
| listener: endBlockFunctionBody(1, {, }) | |
| listener: endTopLevelMethod(test, null, }) | |
| listener: endTopLevelDeclaration(}) | |
| reportAllErrorTokens(test) | |
| listener: endCompilationUnit(1, ) |