parseUnit(class) | |
skipErrorTokens(class) | |
listener: beginCompilationUnit(class) | |
syntheticPreviousToken(class) | |
parseTopLevelDeclarationImpl(, Instance of 'DirectiveContext') | |
parseMetadataStar() | |
listener: beginMetadataStar(class) | |
listener: endMetadataStar(0) | |
parseTopLevelKeywordDeclaration(, class, null, null, Instance of 'DirectiveContext') | |
parseClassDeclarationModifiers(, class) | |
parseClassOrNamedMixinApplication(null, null, null, class) | |
listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) | |
ensureIdentifier(class, classOrMixinDeclaration) | |
listener: handleIdentifier(WrapperClass, classOrMixinDeclaration) | |
listener: handleNoTypeVariables({) | |
listener: beginClassDeclaration(class, null, null, null, WrapperClass) | |
parseClass(WrapperClass, class, class, WrapperClass) | |
parseClassHeaderOpt(WrapperClass, class, class) | |
parseClassExtendsOpt(WrapperClass) | |
listener: handleNoType(WrapperClass) | |
listener: handleClassExtends(null, 1) | |
parseClassWithClauseOpt(WrapperClass) | |
listener: handleClassNoWithClause() | |
parseClassOrMixinOrEnumImplementsOpt(WrapperClass) | |
listener: handleImplements(null, 0) | |
listener: handleClassHeader(class, class, null) | |
parseClassOrMixinOrExtensionBody(WrapperClass, DeclarationKind.Class, WrapperClass) | |
listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl({, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar({) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod({, null, null, null, null, null, null, {, Instance of 'SimpleType', null, abstract, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, abstract) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(abstract) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(abstract, methodDeclaration) | |
parseQualifiedRestOpt(abstract, methodDeclarationContinuation) | |
parseMethodTypeVar(abstract) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(abstract, abstract, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(abstract, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(abstract, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(abstract) | |
parseArguments(abstract) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(abstract, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, as, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, as) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(as) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(as, methodDeclaration) | |
parseQualifiedRestOpt(as, methodDeclarationContinuation) | |
parseMethodTypeVar(as) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(as, as, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(as, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(as, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(as) | |
parseArguments(as) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(as, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(assert) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, assert, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, assert) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(assert) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(assert, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'assert' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: assert}], assert, assert) | |
listener: handleIdentifier(assert, methodDeclaration) | |
parseQualifiedRestOpt(assert, methodDeclarationContinuation) | |
parseMethodTypeVar(assert) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(assert, assert, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(assert, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseAssert(return, Assert.Expression) | |
listener: beginAssert(assert, Assert.Expression) | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
reportRecoverableError(assert, AssertAsExpression) | |
listener: handleRecoverableError(AssertAsExpression, assert, assert) | |
listener: endAssert(assert, Assert.Expression, (, null, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, async, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, async) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(async) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(async, methodDeclaration) | |
parseQualifiedRestOpt(async, methodDeclarationContinuation) | |
parseMethodTypeVar(async) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(async, async, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(async, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(async, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(async) | |
parseArguments(async) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(async, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, await, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, await) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(await) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(await, methodDeclaration) | |
parseQualifiedRestOpt(await, methodDeclarationContinuation) | |
parseMethodTypeVar(await) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(await, await, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(await, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
inPlainSync() | |
looksLikeAwaitExpression(return) | |
looksLikeExpression(await) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(await, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(await) | |
parseArguments(await) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(await, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(break) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, break, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, break) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(break) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(break, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'break' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: break}], break, break) | |
listener: handleIdentifier(break, methodDeclaration) | |
parseQualifiedRestOpt(break, methodDeclarationContinuation) | |
parseMethodTypeVar(break) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(break, break, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(break, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(break, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got 'break'., Try inserting an identifier before 'break'., {lexeme: break}], break, break) | |
rewriter() | |
listener: handleIdentifier(, expression) | |
listener: handleNoTypeArguments(break) | |
parseArgumentsOpt() | |
listener: handleNoArguments(break) | |
listener: handleSend(, break) | |
ensureSemicolon() | |
reportRecoverableError(return, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], return, return) | |
rewriter() | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, break) | |
parseStatement(;) | |
parseStatementX(;) | |
parseBreakStatement(;) | |
isBreakAllowed() | |
reportRecoverableError(break, BreakOutsideOfLoop) | |
listener: handleRecoverableError(BreakOutsideOfLoop, break, break) | |
ensureSemicolon(break) | |
reportRecoverableError(break, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], break, break) | |
rewriter() | |
listener: handleBreakStatement(false, break, ;) | |
notEofOrValue(}, () | |
parseStatement(;) | |
parseStatementX(;) | |
parseExpressionStatementOrDeclaration(;, false) | |
parseExpressionStatementOrDeclarationAfterModifiers(;, ;, null, null, null, false) | |
looksLikeLocalFunction(() | |
parseExpressionStatement(;) | |
parseExpression(;) | |
parsePrecedenceExpression(;, 1, true) | |
parseUnaryExpression(;, true) | |
parsePrimary(;, expression) | |
parseParenthesizedExpressionOrFunctionLiteral(;) | |
parseParenthesizedExpression(;) | |
parseExpressionInParenthesis(;) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
ensureCloseParen(1, () | |
listener: handleParenthesizedExpression(() | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: handleExpressionStatement(;) | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(4, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(case) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, case, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, case) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(case) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(case, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'case' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: case}], case, case) | |
listener: handleIdentifier(case, methodDeclaration) | |
parseQualifiedRestOpt(case, methodDeclarationContinuation) | |
parseMethodTypeVar(case) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(case, case, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(case, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(case, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'case' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: case}], case, case) | |
listener: handleIdentifier(case, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(case) | |
parseArguments(case) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(case, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(catch) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, catch, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, catch) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(catch) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(catch, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'catch' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: catch}], catch, catch) | |
listener: handleIdentifier(catch, methodDeclaration) | |
parseQualifiedRestOpt(catch, methodDeclarationContinuation) | |
parseMethodTypeVar(catch) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(catch, catch, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(catch, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(catch, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'catch' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: catch}], catch, catch) | |
listener: handleIdentifier(catch, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(catch) | |
parseArguments(catch) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(catch, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(class) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, class, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, class) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(class) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(class, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'class' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: class}], class, class) | |
listener: handleIdentifier(class, methodDeclaration) | |
parseQualifiedRestOpt(class, methodDeclarationContinuation) | |
parseMethodTypeVar(class) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(class, class, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(class, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(class, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'class' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: class}], class, class) | |
listener: handleIdentifier(class, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(class) | |
parseArguments(class) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(class, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(const) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, const, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, const) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(const) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(const, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'const' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: const}], const, const) | |
listener: handleIdentifier(const, methodDeclaration) | |
parseQualifiedRestOpt(const, methodDeclarationContinuation) | |
parseMethodTypeVar(const) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(const, const, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(const, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseConstExpression(return) | |
listener: beginConstExpression(const) | |
parseConstructorReference(const, ConstructorReferenceContext.Const, null, false) | |
ensureIdentifier(const, constructorReference) | |
insertSyntheticIdentifier(const, constructorReference, message: Message[ExpectedIdentifier, Expected an identifier, but got '('., Try inserting an identifier before '('., {lexeme: (}], 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(, constructorReference) | |
listener: beginConstructorReference() | |
parseQualifiedRestOpt(, constructorReferenceContinuation) | |
listener: handleNoTypeArguments(() | |
listener: handleNoConstructorReferenceContinuationAfterTypeArguments(() | |
listener: endConstructorReference(, null, (, ConstructorReferenceContext.Const) | |
parseConstructorInvocationArguments() | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: endConstExpression(const) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(continue) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, continue, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, continue) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(continue) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(continue, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'continue' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: continue}], continue, continue) | |
listener: handleIdentifier(continue, methodDeclaration) | |
parseQualifiedRestOpt(continue, methodDeclarationContinuation) | |
parseMethodTypeVar(continue) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(continue, continue, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(continue, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(continue, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got 'continue'., Try inserting an identifier before 'continue'., {lexeme: continue}], continue, continue) | |
rewriter() | |
listener: handleIdentifier(, expression) | |
listener: handleNoTypeArguments(continue) | |
parseArgumentsOpt() | |
listener: handleNoArguments(continue) | |
listener: handleSend(, continue) | |
ensureSemicolon() | |
reportRecoverableError(return, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], return, return) | |
rewriter() | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, continue) | |
parseStatement(;) | |
parseStatementX(;) | |
parseContinueStatement(;) | |
isContinueAllowed() | |
reportRecoverableError(continue, ContinueOutsideOfLoop) | |
listener: handleRecoverableError(ContinueOutsideOfLoop, continue, continue) | |
ensureSemicolon(continue) | |
reportRecoverableError(continue, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], continue, continue) | |
rewriter() | |
listener: handleContinueStatement(false, continue, ;) | |
notEofOrValue(}, () | |
parseStatement(;) | |
parseStatementX(;) | |
parseExpressionStatementOrDeclaration(;, false) | |
parseExpressionStatementOrDeclarationAfterModifiers(;, ;, null, null, null, false) | |
looksLikeLocalFunction(() | |
parseExpressionStatement(;) | |
parseExpression(;) | |
parsePrecedenceExpression(;, 1, true) | |
parseUnaryExpression(;, true) | |
parsePrimary(;, expression) | |
parseParenthesizedExpressionOrFunctionLiteral(;) | |
parseParenthesizedExpression(;) | |
parseExpressionInParenthesis(;) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
ensureCloseParen(1, () | |
listener: handleParenthesizedExpression(() | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: handleExpressionStatement(;) | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(4, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, covariant, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, covariant) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(covariant) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(covariant, methodDeclaration) | |
parseQualifiedRestOpt(covariant, methodDeclarationContinuation) | |
parseMethodTypeVar(covariant) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(covariant, covariant, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(covariant, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(covariant, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(covariant) | |
parseArguments(covariant) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(covariant, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(default) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, default, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, default) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(default) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(default, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'default' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: default}], default, default) | |
listener: handleIdentifier(default, methodDeclaration) | |
parseQualifiedRestOpt(default, methodDeclarationContinuation) | |
parseMethodTypeVar(default) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(default, default, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(default, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(default, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'default' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: default}], default, default) | |
listener: handleIdentifier(default, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(default) | |
parseArguments(default) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(default, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, deferred, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, deferred) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(deferred) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(deferred, methodDeclaration) | |
parseQualifiedRestOpt(deferred, methodDeclarationContinuation) | |
parseMethodTypeVar(deferred) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(deferred, deferred, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(deferred, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(deferred, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(deferred) | |
parseArguments(deferred) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(deferred, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(do) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, do, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, do) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(do) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(do, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'do' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: do}], do, do) | |
listener: handleIdentifier(do, methodDeclaration) | |
parseQualifiedRestOpt(do, methodDeclarationContinuation) | |
parseMethodTypeVar(do) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(do, do, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(do, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(do, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got 'do'., Try inserting an identifier before 'do'., {lexeme: do}], do, do) | |
rewriter() | |
listener: handleIdentifier(, expression) | |
listener: handleNoTypeArguments(do) | |
parseArgumentsOpt() | |
listener: handleNoArguments(do) | |
listener: handleSend(, do) | |
ensureSemicolon() | |
reportRecoverableError(return, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], return, return) | |
rewriter() | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, do) | |
parseStatement(;) | |
parseStatementX(;) | |
parseDoWhileStatement(;) | |
listener: beginDoWhileStatement(do) | |
listener: beginDoWhileStatementBody(() | |
parseStatement(do) | |
parseStatementX(do) | |
parseExpressionStatementOrDeclaration(do, false) | |
parseExpressionStatementOrDeclarationAfterModifiers(do, do, null, null, null, false) | |
looksLikeLocalFunction(() | |
parseExpressionStatement(do) | |
parseExpression(do) | |
parsePrecedenceExpression(do, 1, true) | |
parseUnaryExpression(do, true) | |
parsePrimary(do, expression) | |
parseParenthesizedExpressionOrFunctionLiteral(do) | |
parseParenthesizedExpression(do) | |
parseExpressionInParenthesis(do) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
ensureCloseParen(1, () | |
listener: handleParenthesizedExpression(() | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: handleExpressionStatement(;) | |
listener: endDoWhileStatementBody(;) | |
reportRecoverableError(}, Message[ExpectedButGot, Expected 'while' before this., null, {string: while}]) | |
listener: handleRecoverableError(Message[ExpectedButGot, Expected 'while' before this., null, {string: while}], }, }) | |
rewriter() | |
ensureParenthesizedCondition(while) | |
reportRecoverableError(}, Message[ExpectedToken, Expected to find '('., null, {string: (}]) | |
listener: handleRecoverableError(Message[ExpectedToken, Expected to find '('., null, {string: (}], }, }) | |
rewriter() | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
reportRecoverableErrorWithToken(), Instance of 'Template<(Token) => Message>') | |
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(, )) | |
ensureCloseParen(, () | |
listener: handleParenthesizedCondition(() | |
ensureSemicolon()) | |
reportRecoverableError(;, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], ;, ;) | |
rewriter() | |
listener: endDoWhileStatement(do, while, ;) | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(3, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, dynamic, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, dynamic) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(dynamic) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(dynamic, methodDeclaration) | |
parseQualifiedRestOpt(dynamic, methodDeclarationContinuation) | |
parseMethodTypeVar(dynamic) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(dynamic, dynamic, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(dynamic, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(dynamic, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(dynamic) | |
parseArguments(dynamic) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(dynamic, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(else) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, else, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, else) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(else) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(else, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'else' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: else}], else, else) | |
listener: handleIdentifier(else, methodDeclaration) | |
parseQualifiedRestOpt(else, methodDeclarationContinuation) | |
parseMethodTypeVar(else) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(else, else, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(else, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(else, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got 'else'., Try inserting an identifier before 'else'., {lexeme: else}], else, else) | |
rewriter() | |
listener: handleIdentifier(, expression) | |
listener: handleNoTypeArguments(else) | |
parseArgumentsOpt() | |
listener: handleNoArguments(else) | |
listener: handleSend(, else) | |
ensureSemicolon() | |
reportRecoverableError(return, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], return, return) | |
rewriter() | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, else) | |
parseStatement(;) | |
parseStatementX(;) | |
parseExpressionStatementOrDeclaration(;, false) | |
parseExpressionStatementOrDeclarationAfterModifiers(;, ;, null, null, null, false) | |
looksLikeLocalFunction(else) | |
parseExpressionStatement(;) | |
parseExpression(;) | |
parsePrecedenceExpression(;, 1, true) | |
parseUnaryExpression(;, true) | |
parsePrimary(;, expression) | |
inPlainSync() | |
parseSend(;, expression) | |
isNextIdentifier(;) | |
ensureIdentifier(;, expression) | |
reportRecoverableErrorWithToken(else, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifier, Expected an identifier, but got 'else'., Try inserting an identifier before 'else'., {lexeme: else}], else, else) | |
rewriter() | |
listener: handleIdentifier(, expression) | |
listener: handleNoTypeArguments(else) | |
parseArgumentsOpt() | |
listener: handleNoArguments(else) | |
listener: handleSend(, else) | |
ensureSemicolon() | |
reportRecoverableError(return, Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}]) | |
listener: handleRecoverableError(Message[ExpectedAfterButGot, Expected ';' after this., null, {string: ;}], return, return) | |
rewriter() | |
listener: handleExpressionStatement(;) | |
reportRecoverableError(;, Message[UnexpectedToken, Unexpected token ';'., null, {lexeme: ;}]) | |
listener: handleRecoverableError(Message[UnexpectedToken, Unexpected token ';'., null, {lexeme: ;}], else, else) | |
notEofOrValue(}, () | |
parseStatement(else) | |
parseStatementX(else) | |
parseExpressionStatementOrDeclaration(else, false) | |
parseExpressionStatementOrDeclarationAfterModifiers(else, else, null, null, null, false) | |
looksLikeLocalFunction(() | |
parseExpressionStatement(else) | |
parseExpression(else) | |
parsePrecedenceExpression(else, 1, true) | |
parseUnaryExpression(else, true) | |
parsePrimary(else, expression) | |
parseParenthesizedExpressionOrFunctionLiteral(else) | |
parseParenthesizedExpression(else) | |
parseExpressionInParenthesis(else) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
ensureCloseParen(1, () | |
listener: handleParenthesizedExpression(() | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: handleExpressionStatement(;) | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(4, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(enum) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, enum, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, enum) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(enum) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(enum, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'enum' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: enum}], enum, enum) | |
listener: handleIdentifier(enum, methodDeclaration) | |
parseQualifiedRestOpt(enum, methodDeclarationContinuation) | |
parseMethodTypeVar(enum) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(enum, enum, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(enum, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(enum, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'enum' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: enum}], enum, enum) | |
listener: handleIdentifier(enum, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(enum) | |
parseArguments(enum) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(enum, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, export, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, export) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(export) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(export, methodDeclaration) | |
parseQualifiedRestOpt(export, methodDeclarationContinuation) | |
parseMethodTypeVar(export) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(export, export, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(export, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(export, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(export) | |
parseArguments(export) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(export, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(extends) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, extends, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, extends) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(extends) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(extends, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'extends' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: extends}], extends, extends) | |
listener: handleIdentifier(extends, methodDeclaration) | |
parseQualifiedRestOpt(extends, methodDeclarationContinuation) | |
parseMethodTypeVar(extends) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(extends, extends, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(extends, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
reportRecoverableErrorWithToken(extends, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'extends' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: extends}], extends, extends) | |
listener: handleIdentifier(extends, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(extends) | |
parseArguments(extends) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(extends, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, extension, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, extension) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(extension) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(extension, methodDeclaration) | |
parseQualifiedRestOpt(extension, methodDeclarationContinuation) | |
parseMethodTypeVar(extension) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(extension, extension, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(extension, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(extension, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(extension) | |
parseArguments(extension) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(extension, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, external, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, external) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(external) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(external, methodDeclaration) | |
parseQualifiedRestOpt(external, methodDeclarationContinuation) | |
parseMethodTypeVar(external) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(external, external, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(external, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(external, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(external) | |
parseArguments(external) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(external, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, factory, DeclarationKind.Class, WrapperClass, false) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, factory) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(factory) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, false) | |
listener: handleIdentifier(factory, methodDeclaration) | |
parseQualifiedRestOpt(factory, methodDeclarationContinuation) | |
parseMethodTypeVar(factory) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(factory, factory, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(factory, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
inPlainSync() | |
parseSendOrFunctionLiteral(return, expression) | |
looksLikeFunctionBody(+) | |
parseSend(return, expression) | |
isNextIdentifier(return) | |
ensureIdentifier(return, expression) | |
inPlainSync() | |
listener: handleIdentifier(factory, expression) | |
listener: handleNoTypeArguments(() | |
parseArgumentsOpt(factory) | |
parseArguments(factory) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend(factory, +) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(false) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, false, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, false) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(false) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(false, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'false' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: false}], false, false) | |
listener: handleIdentifier(false, methodDeclaration) | |
parseQualifiedRestOpt(false, methodDeclarationContinuation) | |
parseMethodTypeVar(false) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(false, false, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(false, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(==) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(==) | |
listener: handleSend(x, ==) | |
listener: beginBinaryExpression(==) | |
parsePrecedenceExpression(==, 8, true) | |
parseUnaryExpression(==, true) | |
parsePrimary(==, expression) | |
parseLiteralInt(==) | |
listener: handleLiteralInt(0) | |
listener: endBinaryExpression(==) | |
ensureCloseParen(0, () | |
listener: handleParenthesizedCondition(() | |
listener: beginThenStatement(return) | |
parseStatement()) | |
parseStatementX()) | |
parseReturnStatement()) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralInt(return) | |
listener: handleLiteralInt(42) | |
ensureSemicolon(42) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
listener: endThenStatement(;) | |
listener: endIfStatement(if, null) | |
notEofOrValue(}, return) | |
parseStatement(;) | |
parseStatementX(;) | |
parseReturnStatement(;) | |
listener: beginReturnStatement(return) | |
parseExpression(return) | |
parsePrecedenceExpression(return, 1, true) | |
parseUnaryExpression(return, true) | |
parsePrimary(return, expression) | |
parseLiteralBool(return) | |
listener: handleLiteralBool(false) | |
parseArgumentOrIndexStar(false, Instance of 'NoTypeParamOrArg', false) | |
listener: handleNoTypeArguments(() | |
parseArguments(false) | |
parseArgumentsRest(() | |
listener: beginArguments(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |
parseSend((, expression) | |
isNextIdentifier(() | |
ensureIdentifier((, expression) | |
listener: handleIdentifier(x, expression) | |
listener: handleNoTypeArguments(-) | |
parseArgumentsOpt(x) | |
listener: handleNoArguments(-) | |
listener: handleSend(x, -) | |
listener: beginBinaryExpression(-) | |
parsePrecedenceExpression(-, 14, true) | |
parseUnaryExpression(-, true) | |
parsePrimary(-, expression) | |
parseLiteralInt(-) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(-) | |
listener: endArguments(1, (, )) | |
listener: handleSend((, )) | |
listener: beginBinaryExpression(+) | |
parsePrecedenceExpression(+, 14, true) | |
parseUnaryExpression(+, true) | |
parsePrimary(+, expression) | |
parseLiteralInt(+) | |
listener: handleLiteralInt(1) | |
listener: endBinaryExpression(+) | |
ensureSemicolon(1) | |
listener: endReturnStatement(true, return, ;) | |
inGenerator() | |
notEofOrValue(}, }) | |
listener: endBlockFunctionBody(2, {, }) | |
listener: endClassMethod(null, int, (, null, }) | |
listener: endMember() | |
notEofOrValue(}, int) | |
parseClassOrMixinOrExtensionOrEnumMemberImpl(}, DeclarationKind.Class, WrapperClass) | |
parseMetadataStar(}) | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginMember() | |
isReservedKeyword(final) | |
indicatesMethodOrField(() | |
parseMethod(}, null, null, null, null, null, null, }, Instance of 'SimpleType', null, final, DeclarationKind.Class, WrapperClass, true) | |
listener: beginMethod(DeclarationKind.Class, null, null, null, null, null, final) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(final) | |
listener: handleType(int, null) | |
ensureIdentifierPotentiallyRecovered(int, methodDeclaration, true) | |
reportRecoverableErrorWithToken(final, Instance of 'Template<(Token) => Message>') | |
listener: handleRecoverableError(Message[ExpectedIdentifierButGotKeyword, 'final' can't be used as an identifier because it's a keyword., Try renaming this to be an identifier that isn't a keyword., {lexeme: final}], final, final) | |
listener: handleIdentifier(final, methodDeclaration) | |
parseQualifiedRestOpt(final, methodDeclarationContinuation) | |
parseMethodTypeVar(final) | |
listener: handleNoTypeVariables(() | |
parseGetterOrFormalParameters(final, final, false, MemberKind.NonStaticMethod) | |
parseFormalParameters(final, MemberKind.NonStaticMethod) | |
parseFormalParametersRest((, MemberKind.NonStaticMethod) | |
listener: beginFormalParameters((, MemberKind.NonStaticMethod) | |
parseFormalParameter((, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
parseMetadataStar(() | |
listener: beginMetadataStar(int) | |
listener: endMetadataStar(0) | |
listener: beginFormalParameter(int, MemberKind.NonStaticMethod, null, null, null) | |
listener: handleIdentifier(int, typeReference) | |
listener: handleNoTypeArguments(x) | |
listener: handleType(int, null) | |
ensureIdentifier(int, formalParameterDeclaration) | |
listener: handleIdentifier(x, formalParameterDeclaration) | |
listener: handleFormalParameterWithoutValue()) | |
listener: endFormalParameter(null, null, null, x, null, null, FormalParameterKind.mandatory, MemberKind.NonStaticMethod) | |
listener: endFormalParameters(1, (, ), MemberKind.NonStaticMethod) | |
parseInitializersOpt()) | |
listener: handleNoInitializers() | |
parseAsyncModifierOpt()) | |
listener: handleAsyncModifier(null, null) | |
inPlainSync() | |
inPlainSync() | |
parseFunctionBody(), false, true) | |
listener: beginBlockFunctionBody({) | |
notEofOrValue(}, if) | |
parseStatement({) | |
parseStatementX({) | |
parseIfStatement({) | |
listener: beginIfStatement(if) | |
ensureParenthesizedCondition(if) | |
parseExpressionInParenthesisRest(() | |
parseExpression(() | |
parsePrecedenceExpression((, 1, true) | |
parseUnaryExpression((, true) | |
parsePrimary((, expression) | |
parseSendOrFunctionLiteral((, expression) | |