| // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| import 'package:_fe_analyzer_shared/src/experiments/flags.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/assert.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/block_kind.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/constructor_reference_context.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/declaration_kind.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/formal_parameter_kind.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/identifier_context.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/listener.dart'; |
| import 'package:_fe_analyzer_shared/src/parser/member_kind.dart'; |
| import 'package:_fe_analyzer_shared/src/scanner/error_token.dart'; |
| import 'package:_fe_analyzer_shared/src/scanner/token.dart'; |
| import 'package:front_end/src/base/messages.dart'; |
| |
| // THIS FILE IS AUTO GENERATED BY 'test/parser_test_listener_creator.dart' |
| // Run this command to update it: |
| // 'dart pkg/front_end/test/parser_test_listener_creator.dart' |
| |
| class ParserTestListener implements Listener { |
| int indent = 0; |
| final StringBuffer sb = new StringBuffer(); |
| final bool trace; |
| |
| ParserTestListener(this.trace); |
| |
| String createTrace() { |
| List<String> traceLines = StackTrace.current.toString().split("\n"); |
| for (int i = 0; i < traceLines.length; i++) { |
| // Find first one that's not any of the denylisted ones. |
| String line = traceLines[i]; |
| if (line.contains("parser_test_listener.dart:") || |
| line.contains("parser_suite.dart:")) { |
| continue; |
| } |
| return line.substring(line.indexOf("(") + 1, line.lastIndexOf(")")); |
| } |
| return "N/A"; |
| } |
| |
| void doPrint(String s) { |
| String outString = s; |
| if (trace) outString += " (${createTrace()})"; |
| if (outString != "") { |
| sb.writeln((" " * indent) + outString); |
| } else { |
| sb.writeln(""); |
| } |
| } |
| |
| bool checkEof(Token token) { |
| if (token.isEof) { |
| doPrint("// WARNING: Reporting at eof for $token."); |
| return true; |
| } |
| Token? next = token.next; |
| while (next != null && next.offset == token.offset && !next.isEof) { |
| next = next.next; |
| } |
| if (next != null && next.offset == token.offset && next.isEof) { |
| doPrint("// WARNING: Reporting at the eof offset for $token."); |
| return true; |
| } |
| return false; |
| } |
| |
| void seen(Token? token) {} |
| |
| @override |
| Uri? get uri => null; |
| |
| @override |
| void logEvent(String name) { |
| doPrint('logEvent(' '$name)'); |
| } |
| |
| @override |
| void beginArguments(Token token) { |
| seen(token); |
| doPrint('beginArguments(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endArguments(int count, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endArguments(' '$count, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void handleObjectPatternFields(int count, Token beginToken, Token endToken) { |
| seen(beginToken); |
| seen(endToken); |
| doPrint( |
| 'handleObjectPatternFields(' '$count, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void handleAsyncModifier(Token? asyncToken, Token? starToken) { |
| seen(asyncToken); |
| seen(starToken); |
| doPrint('handleAsyncModifier(' '$asyncToken, ' '$starToken)'); |
| } |
| |
| @override |
| void beginAwaitExpression(Token token) { |
| seen(token); |
| doPrint('beginAwaitExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endAwaitExpression(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endAwaitExpression(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void endInvalidAwaitExpression( |
| Token beginToken, Token endToken, MessageCode errorCode) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endInvalidAwaitExpression(' |
| '$beginToken, ' |
| '$endToken, ' |
| '$errorCode)'); |
| } |
| |
| @override |
| void beginBlock(Token token, BlockKind blockKind) { |
| seen(token); |
| doPrint('beginBlock(' '$token, ' '$blockKind)'); |
| indent++; |
| } |
| |
| @override |
| void endBlock( |
| int count, Token beginToken, Token endToken, BlockKind blockKind) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endBlock(' '$count, ' '$beginToken, ' '$endToken, ' '$blockKind)'); |
| } |
| |
| @override |
| void handleInvalidTopLevelBlock(Token token) { |
| seen(token); |
| doPrint('handleInvalidTopLevelBlock(' '$token)'); |
| } |
| |
| @override |
| void beginCascade(Token token) { |
| seen(token); |
| doPrint('beginCascade(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endCascade() { |
| indent--; |
| doPrint('endCascade()'); |
| } |
| |
| @override |
| void beginCaseExpression(Token caseKeyword) { |
| seen(caseKeyword); |
| doPrint('beginCaseExpression(' '$caseKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endCaseExpression(Token caseKeyword, Token? when, Token colon) { |
| indent--; |
| seen(caseKeyword); |
| seen(when); |
| seen(colon); |
| doPrint('endCaseExpression(' '$caseKeyword, ' '$when, ' '$colon)'); |
| } |
| |
| @override |
| void beginClassOrMixinOrExtensionBody(DeclarationKind kind, Token token) { |
| seen(token); |
| doPrint('beginClassOrMixinOrExtensionBody(' '$kind, ' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endClassOrMixinOrExtensionBody( |
| DeclarationKind kind, int memberCount, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endClassOrMixinOrExtensionBody(' |
| '$kind, ' |
| '$memberCount, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginClassOrMixinOrNamedMixinApplicationPrelude(Token token) { |
| seen(token); |
| doPrint('beginClassOrMixinOrNamedMixinApplicationPrelude(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void beginClassDeclaration( |
| Token begin, |
| Token? abstractToken, |
| Token? macroToken, |
| Token? sealedToken, |
| Token? baseToken, |
| Token? interfaceToken, |
| Token? finalToken, |
| Token? augmentToken, |
| Token? mixinToken, |
| Token name) { |
| seen(begin); |
| seen(abstractToken); |
| seen(macroToken); |
| seen(sealedToken); |
| seen(baseToken); |
| seen(interfaceToken); |
| seen(finalToken); |
| seen(augmentToken); |
| seen(mixinToken); |
| seen(name); |
| doPrint('beginClassDeclaration(' |
| '$begin, ' |
| '$abstractToken, ' |
| '$macroToken, ' |
| '$sealedToken, ' |
| '$baseToken, ' |
| '$interfaceToken, ' |
| '$finalToken, ' |
| '$augmentToken, ' |
| '$mixinToken, ' |
| '$name)'); |
| indent++; |
| } |
| |
| @override |
| void handleClassExtends(Token? extendsKeyword, int typeCount) { |
| seen(extendsKeyword); |
| doPrint('handleClassExtends(' '$extendsKeyword, ' '$typeCount)'); |
| } |
| |
| @override |
| void handleImplements(Token? implementsKeyword, int interfacesCount) { |
| seen(implementsKeyword); |
| doPrint('handleImplements(' '$implementsKeyword, ' '$interfacesCount)'); |
| } |
| |
| @override |
| void handleClassHeader(Token begin, Token classKeyword, Token? nativeToken) { |
| seen(begin); |
| seen(classKeyword); |
| seen(nativeToken); |
| doPrint('handleClassHeader(' '$begin, ' '$classKeyword, ' '$nativeToken)'); |
| } |
| |
| @override |
| void handleRecoverDeclarationHeader(DeclarationHeaderKind kind) { |
| doPrint('handleRecoverDeclarationHeader(' '$kind)'); |
| } |
| |
| @override |
| void endClassDeclaration(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endClassDeclaration(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginMixinDeclaration(Token beginToken, Token? augmentToken, |
| Token? baseToken, Token mixinKeyword, Token name) { |
| seen(beginToken); |
| seen(augmentToken); |
| seen(baseToken); |
| seen(mixinKeyword); |
| seen(name); |
| doPrint('beginMixinDeclaration(' |
| '$beginToken, ' |
| '$augmentToken, ' |
| '$baseToken, ' |
| '$mixinKeyword, ' |
| '$name)'); |
| indent++; |
| } |
| |
| @override |
| void handleMixinOn(Token? onKeyword, int typeCount) { |
| seen(onKeyword); |
| doPrint('handleMixinOn(' '$onKeyword, ' '$typeCount)'); |
| } |
| |
| @override |
| void handleMixinHeader(Token mixinKeyword) { |
| seen(mixinKeyword); |
| doPrint('handleMixinHeader(' '$mixinKeyword)'); |
| } |
| |
| @override |
| void handleRecoverMixinHeader() { |
| doPrint('handleRecoverMixinHeader()'); |
| } |
| |
| @override |
| void endMixinDeclaration(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endMixinDeclaration(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginUncategorizedTopLevelDeclaration(Token token) { |
| seen(token); |
| doPrint('beginUncategorizedTopLevelDeclaration(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void beginExtensionDeclarationPrelude(Token extensionKeyword) { |
| seen(extensionKeyword); |
| doPrint('beginExtensionDeclarationPrelude(' '$extensionKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void beginExtensionDeclaration( |
| Token? augmentToken, Token extensionKeyword, Token? name) { |
| seen(augmentToken); |
| seen(extensionKeyword); |
| seen(name); |
| doPrint('beginExtensionDeclaration(' |
| '$augmentToken, ' |
| '$extensionKeyword, ' |
| '$name)'); |
| indent++; |
| } |
| |
| @override |
| void endExtensionDeclaration(Token beginToken, Token extensionKeyword, |
| Token? onKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(extensionKeyword); |
| seen(onKeyword); |
| seen(endToken); |
| doPrint('endExtensionDeclaration(' |
| '$beginToken, ' |
| '$extensionKeyword, ' |
| '$onKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginExtensionTypeDeclaration( |
| Token? augmentKeyword, Token extensionKeyword, Token name) { |
| seen(augmentKeyword); |
| seen(extensionKeyword); |
| seen(name); |
| doPrint('beginExtensionTypeDeclaration(' |
| '$augmentKeyword, ' |
| '$extensionKeyword, ' |
| '$name)'); |
| indent++; |
| } |
| |
| @override |
| void endExtensionTypeDeclaration(Token beginToken, Token? augmentToken, |
| Token extensionKeyword, Token typeKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(augmentToken); |
| seen(extensionKeyword); |
| seen(typeKeyword); |
| seen(endToken); |
| doPrint('endExtensionTypeDeclaration(' |
| '$beginToken, ' |
| '$augmentToken, ' |
| '$extensionKeyword, ' |
| '$typeKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginPrimaryConstructor(Token beginToken) { |
| seen(beginToken); |
| doPrint('beginPrimaryConstructor(' '$beginToken)'); |
| indent++; |
| } |
| |
| @override |
| void endPrimaryConstructor( |
| Token beginToken, Token? constKeyword, bool hasConstructorName) { |
| indent--; |
| seen(beginToken); |
| seen(constKeyword); |
| doPrint('endPrimaryConstructor(' |
| '$beginToken, ' |
| '$constKeyword, ' |
| '$hasConstructorName)'); |
| } |
| |
| @override |
| void handleNoPrimaryConstructor(Token token, Token? constKeyword) { |
| seen(token); |
| seen(constKeyword); |
| doPrint('handleNoPrimaryConstructor(' '$token, ' '$constKeyword)'); |
| } |
| |
| @override |
| void beginCombinators(Token token) { |
| seen(token); |
| doPrint('beginCombinators(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endCombinators(int count) { |
| indent--; |
| doPrint('endCombinators(' '$count)'); |
| } |
| |
| @override |
| void beginCompilationUnit(Token token) { |
| seen(token); |
| doPrint('beginCompilationUnit(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void handleDirectivesOnly() { |
| doPrint('handleDirectivesOnly()'); |
| } |
| |
| @override |
| void endCompilationUnit(int count, Token token) { |
| indent--; |
| seen(token); |
| doPrint('endCompilationUnit(' '$count, ' '$token)'); |
| } |
| |
| @override |
| void beginConstLiteral(Token token) { |
| seen(token); |
| doPrint('beginConstLiteral(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endConstLiteral(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endConstLiteral(' '$endToken)'); |
| } |
| |
| @override |
| void beginConstructorReference(Token start) { |
| seen(start); |
| doPrint('beginConstructorReference(' '$start)'); |
| indent++; |
| } |
| |
| @override |
| void endConstructorReference(Token start, Token? periodBeforeName, |
| Token endToken, ConstructorReferenceContext constructorReferenceContext) { |
| indent--; |
| seen(start); |
| seen(periodBeforeName); |
| seen(endToken); |
| doPrint('endConstructorReference(' |
| '$start, ' |
| '$periodBeforeName, ' |
| '$endToken, ' |
| '$constructorReferenceContext)'); |
| } |
| |
| @override |
| void beginDoWhileStatement(Token token) { |
| seen(token); |
| doPrint('beginDoWhileStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endDoWhileStatement( |
| Token doKeyword, Token whileKeyword, Token endToken) { |
| indent--; |
| seen(doKeyword); |
| seen(whileKeyword); |
| seen(endToken); |
| doPrint( |
| 'endDoWhileStatement(' '$doKeyword, ' '$whileKeyword, ' '$endToken)'); |
| } |
| |
| @override |
| void beginDoWhileStatementBody(Token token) { |
| seen(token); |
| doPrint('beginDoWhileStatementBody(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endDoWhileStatementBody(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endDoWhileStatementBody(' '$token)'); |
| } |
| |
| @override |
| void beginWhileStatementBody(Token token) { |
| seen(token); |
| doPrint('beginWhileStatementBody(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endWhileStatementBody(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endWhileStatementBody(' '$endToken)'); |
| } |
| |
| @override |
| void beginEnum(Token enumKeyword) { |
| seen(enumKeyword); |
| doPrint('beginEnum(' '$enumKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endEnum(Token beginToken, Token enumKeyword, Token leftBrace, |
| int memberCount, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(enumKeyword); |
| seen(leftBrace); |
| seen(endToken); |
| doPrint('endEnum(' |
| '$beginToken, ' |
| '$enumKeyword, ' |
| '$leftBrace, ' |
| '$memberCount, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endEnumConstructor(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endEnumConstructor(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleEnumElements(Token elementsEndToken, int elementsCount) { |
| seen(elementsEndToken); |
| doPrint('handleEnumElements(' '$elementsEndToken, ' '$elementsCount)'); |
| } |
| |
| @override |
| void handleEnumHeader( |
| Token? augmentToken, Token enumKeyword, Token leftBrace) { |
| seen(augmentToken); |
| seen(enumKeyword); |
| seen(leftBrace); |
| doPrint( |
| 'handleEnumHeader(' '$augmentToken, ' '$enumKeyword, ' '$leftBrace)'); |
| } |
| |
| @override |
| void handleEnumElement(Token beginToken, Token? augmentToken) { |
| seen(beginToken); |
| seen(augmentToken); |
| doPrint('handleEnumElement(' '$beginToken, ' '$augmentToken)'); |
| } |
| |
| @override |
| void endEnumFactoryMethod( |
| Token beginToken, Token factoryKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(factoryKeyword); |
| seen(endToken); |
| doPrint('endEnumFactoryMethod(' |
| '$beginToken, ' |
| '$factoryKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginExport(Token token) { |
| seen(token); |
| doPrint('beginExport(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endExport(Token exportKeyword, Token semicolon) { |
| indent--; |
| seen(exportKeyword); |
| seen(semicolon); |
| doPrint('endExport(' '$exportKeyword, ' '$semicolon)'); |
| } |
| |
| @override |
| void handleExtraneousExpression(Token token, Message message) { |
| seen(token); |
| doPrint('handleExtraneousExpression(' '$token, ' '$message)'); |
| } |
| |
| @override |
| void handleExpressionStatement(Token beginToken, Token endToken) { |
| seen(beginToken); |
| seen(endToken); |
| doPrint('handleExpressionStatement(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginFactoryMethod(DeclarationKind declarationKind, Token lastConsumed, |
| Token? externalToken, Token? constToken) { |
| seen(lastConsumed); |
| seen(externalToken); |
| seen(constToken); |
| doPrint('beginFactoryMethod(' |
| '$declarationKind, ' |
| '$lastConsumed, ' |
| '$externalToken, ' |
| '$constToken)'); |
| indent++; |
| } |
| |
| @override |
| void endClassFactoryMethod( |
| Token beginToken, Token factoryKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(factoryKeyword); |
| seen(endToken); |
| doPrint('endClassFactoryMethod(' |
| '$beginToken, ' |
| '$factoryKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endMixinFactoryMethod( |
| Token beginToken, Token factoryKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(factoryKeyword); |
| seen(endToken); |
| doPrint('endMixinFactoryMethod(' |
| '$beginToken, ' |
| '$factoryKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionFactoryMethod( |
| Token beginToken, Token factoryKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(factoryKeyword); |
| seen(endToken); |
| doPrint('endExtensionFactoryMethod(' |
| '$beginToken, ' |
| '$factoryKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionTypeFactoryMethod( |
| Token beginToken, Token factoryKeyword, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(factoryKeyword); |
| seen(endToken); |
| doPrint('endExtensionTypeFactoryMethod(' |
| '$beginToken, ' |
| '$factoryKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginFormalParameter(Token token, MemberKind kind, Token? requiredToken, |
| Token? covariantToken, Token? varFinalOrConst) { |
| seen(token); |
| seen(requiredToken); |
| seen(covariantToken); |
| seen(varFinalOrConst); |
| doPrint('beginFormalParameter(' |
| '$token, ' |
| '$kind, ' |
| '$requiredToken, ' |
| '$covariantToken, ' |
| '$varFinalOrConst)'); |
| indent++; |
| } |
| |
| @override |
| void endFormalParameter( |
| Token? thisKeyword, |
| Token? superKeyword, |
| Token? periodAfterThisOrSuper, |
| Token nameToken, |
| Token? initializerStart, |
| Token? initializerEnd, |
| FormalParameterKind kind, |
| MemberKind memberKind) { |
| indent--; |
| seen(thisKeyword); |
| seen(superKeyword); |
| seen(periodAfterThisOrSuper); |
| seen(nameToken); |
| seen(initializerStart); |
| seen(initializerEnd); |
| doPrint('endFormalParameter(' |
| '$thisKeyword, ' |
| '$superKeyword, ' |
| '$periodAfterThisOrSuper, ' |
| '$nameToken, ' |
| '$initializerStart, ' |
| '$initializerEnd, ' |
| '$kind, ' |
| '$memberKind)'); |
| } |
| |
| @override |
| void handleNoFormalParameters(Token token, MemberKind kind) { |
| seen(token); |
| doPrint('handleNoFormalParameters(' '$token, ' '$kind)'); |
| } |
| |
| @override |
| void beginFormalParameters(Token token, MemberKind kind) { |
| seen(token); |
| doPrint('beginFormalParameters(' '$token, ' '$kind)'); |
| indent++; |
| } |
| |
| @override |
| void endFormalParameters( |
| int count, Token beginToken, Token endToken, MemberKind kind) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endFormalParameters(' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken, ' |
| '$kind)'); |
| } |
| |
| @override |
| void endClassFields( |
| Token? abstractToken, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| int count, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(abstractToken); |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endClassFields(' |
| '$abstractToken, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endMixinFields( |
| Token? abstractToken, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| int count, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(abstractToken); |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endMixinFields(' |
| '$abstractToken, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionFields( |
| Token? abstractToken, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| int count, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(abstractToken); |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endExtensionFields(' |
| '$abstractToken, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionTypeFields( |
| Token? abstractToken, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| int count, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(abstractToken); |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endExtensionTypeFields(' |
| '$abstractToken, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endEnumFields( |
| Token? abstractToken, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| int count, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(abstractToken); |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endEnumFields(' |
| '$abstractToken, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endEnumMethod(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endEnumMethod(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleForInitializerEmptyStatement(Token token) { |
| seen(token); |
| doPrint('handleForInitializerEmptyStatement(' '$token)'); |
| } |
| |
| @override |
| void handleForInitializerExpressionStatement(Token token, bool forIn) { |
| seen(token); |
| doPrint('handleForInitializerExpressionStatement(' '$token, ' '$forIn)'); |
| } |
| |
| @override |
| void handleForInitializerLocalVariableDeclaration(Token token, bool forIn) { |
| seen(token); |
| doPrint( |
| 'handleForInitializerLocalVariableDeclaration(' '$token, ' '$forIn)'); |
| } |
| |
| @override |
| void handleForInitializerPatternVariableAssignment( |
| Token keyword, Token equals) { |
| seen(keyword); |
| seen(equals); |
| doPrint('handleForInitializerPatternVariableAssignment(' |
| '$keyword, ' |
| '$equals)'); |
| } |
| |
| @override |
| void beginForStatement(Token token) { |
| seen(token); |
| doPrint('beginForStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void handleForLoopParts(Token forKeyword, Token leftParen, |
| Token leftSeparator, Token rightSeparator, int updateExpressionCount) { |
| seen(forKeyword); |
| seen(leftParen); |
| seen(leftSeparator); |
| seen(rightSeparator); |
| doPrint('handleForLoopParts(' |
| '$forKeyword, ' |
| '$leftParen, ' |
| '$leftSeparator, ' |
| '$rightSeparator, ' |
| '$updateExpressionCount)'); |
| } |
| |
| @override |
| void endForStatement(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endForStatement(' '$endToken)'); |
| } |
| |
| @override |
| void beginForStatementBody(Token token) { |
| seen(token); |
| doPrint('beginForStatementBody(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endForStatementBody(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endForStatementBody(' '$endToken)'); |
| } |
| |
| @override |
| void handleForInLoopParts(Token? awaitToken, Token forToken, |
| Token leftParenthesis, Token? patternKeyword, Token inKeyword) { |
| seen(awaitToken); |
| seen(forToken); |
| seen(leftParenthesis); |
| seen(patternKeyword); |
| seen(inKeyword); |
| doPrint('handleForInLoopParts(' |
| '$awaitToken, ' |
| '$forToken, ' |
| '$leftParenthesis, ' |
| '$patternKeyword, ' |
| '$inKeyword)'); |
| } |
| |
| @override |
| void endForIn(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endForIn(' '$endToken)'); |
| } |
| |
| @override |
| void beginForInExpression(Token token) { |
| seen(token); |
| doPrint('beginForInExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endForInExpression(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endForInExpression(' '$token)'); |
| } |
| |
| @override |
| void beginForInBody(Token token) { |
| seen(token); |
| doPrint('beginForInBody(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endForInBody(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endForInBody(' '$endToken)'); |
| } |
| |
| @override |
| void beginNamedFunctionExpression(Token token) { |
| seen(token); |
| doPrint('beginNamedFunctionExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endNamedFunctionExpression(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endNamedFunctionExpression(' '$endToken)'); |
| } |
| |
| @override |
| void beginLocalFunctionDeclaration(Token token) { |
| seen(token); |
| doPrint('beginLocalFunctionDeclaration(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endLocalFunctionDeclaration(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endLocalFunctionDeclaration(' '$endToken)'); |
| } |
| |
| @override |
| void beginBlockFunctionBody(Token token) { |
| seen(token); |
| doPrint('beginBlockFunctionBody(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endBlockFunctionBody(int count, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endBlockFunctionBody(' '$count, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void handleNoFunctionBody(Token token) { |
| seen(token); |
| doPrint('handleNoFunctionBody(' '$token)'); |
| } |
| |
| @override |
| void handleFunctionBodySkipped(Token token, bool isExpressionBody) { |
| seen(token); |
| doPrint('handleFunctionBodySkipped(' '$token, ' '$isExpressionBody)'); |
| } |
| |
| @override |
| void beginFunctionName(Token token) { |
| seen(token); |
| doPrint('beginFunctionName(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endFunctionName(Token beginToken, Token token) { |
| indent--; |
| seen(beginToken); |
| seen(token); |
| doPrint('endFunctionName(' '$beginToken, ' '$token)'); |
| } |
| |
| @override |
| void beginTypedef(Token token) { |
| seen(token); |
| doPrint('beginTypedef(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endTypedef(Token? augmentToken, Token typedefKeyword, Token? equals, |
| Token endToken) { |
| indent--; |
| seen(augmentToken); |
| seen(typedefKeyword); |
| seen(equals); |
| seen(endToken); |
| doPrint('endTypedef(' |
| '$augmentToken, ' |
| '$typedefKeyword, ' |
| '$equals, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleClassWithClause(Token withKeyword) { |
| seen(withKeyword); |
| doPrint('handleClassWithClause(' '$withKeyword)'); |
| } |
| |
| @override |
| void handleClassNoWithClause() { |
| doPrint('handleClassNoWithClause()'); |
| } |
| |
| @override |
| void handleEnumWithClause(Token withKeyword) { |
| seen(withKeyword); |
| doPrint('handleEnumWithClause(' '$withKeyword)'); |
| } |
| |
| @override |
| void handleEnumNoWithClause() { |
| doPrint('handleEnumNoWithClause()'); |
| } |
| |
| @override |
| void handleMixinWithClause(Token withKeyword) { |
| seen(withKeyword); |
| doPrint('handleMixinWithClause(' '$withKeyword)'); |
| } |
| |
| @override |
| void beginNamedMixinApplication( |
| Token beginToken, |
| Token? abstractToken, |
| Token? macroToken, |
| Token? sealedToken, |
| Token? baseToken, |
| Token? interfaceToken, |
| Token? finalToken, |
| Token? augmentToken, |
| Token? mixinToken, |
| Token name) { |
| seen(beginToken); |
| seen(abstractToken); |
| seen(macroToken); |
| seen(sealedToken); |
| seen(baseToken); |
| seen(interfaceToken); |
| seen(finalToken); |
| seen(augmentToken); |
| seen(mixinToken); |
| seen(name); |
| doPrint('beginNamedMixinApplication(' |
| '$beginToken, ' |
| '$abstractToken, ' |
| '$macroToken, ' |
| '$sealedToken, ' |
| '$baseToken, ' |
| '$interfaceToken, ' |
| '$finalToken, ' |
| '$augmentToken, ' |
| '$mixinToken, ' |
| '$name)'); |
| indent++; |
| } |
| |
| @override |
| void handleNamedMixinApplicationWithClause(Token withKeyword) { |
| seen(withKeyword); |
| doPrint('handleNamedMixinApplicationWithClause(' '$withKeyword)'); |
| } |
| |
| @override |
| void endNamedMixinApplication(Token begin, Token classKeyword, Token equals, |
| Token? implementsKeyword, Token endToken) { |
| indent--; |
| seen(begin); |
| seen(classKeyword); |
| seen(equals); |
| seen(implementsKeyword); |
| seen(endToken); |
| doPrint('endNamedMixinApplication(' |
| '$begin, ' |
| '$classKeyword, ' |
| '$equals, ' |
| '$implementsKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginHide(Token hideKeyword) { |
| seen(hideKeyword); |
| doPrint('beginHide(' '$hideKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endHide(Token hideKeyword) { |
| indent--; |
| seen(hideKeyword); |
| doPrint('endHide(' '$hideKeyword)'); |
| } |
| |
| @override |
| void handleIdentifierList(int count) { |
| doPrint('handleIdentifierList(' '$count)'); |
| } |
| |
| @override |
| void beginTypeList(Token token) { |
| seen(token); |
| doPrint('beginTypeList(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endTypeList(int count) { |
| indent--; |
| doPrint('endTypeList(' '$count)'); |
| } |
| |
| @override |
| void beginIfStatement(Token token) { |
| seen(token); |
| doPrint('beginIfStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endIfStatement(Token ifToken, Token? elseToken, Token endToken) { |
| indent--; |
| seen(ifToken); |
| seen(elseToken); |
| seen(endToken); |
| doPrint('endIfStatement(' '$ifToken, ' '$elseToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginThenStatement(Token token) { |
| seen(token); |
| doPrint('beginThenStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endThenStatement(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endThenStatement(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginElseStatement(Token token) { |
| seen(token); |
| doPrint('beginElseStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endElseStatement(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endElseStatement(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginImport(Token importKeyword) { |
| seen(importKeyword); |
| doPrint('beginImport(' '$importKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void handleImportPrefix(Token? deferredKeyword, Token? asKeyword) { |
| seen(deferredKeyword); |
| seen(asKeyword); |
| doPrint('handleImportPrefix(' '$deferredKeyword, ' '$asKeyword)'); |
| } |
| |
| @override |
| void endImport(Token importKeyword, Token? augmentToken, Token? semicolon) { |
| indent--; |
| seen(importKeyword); |
| seen(augmentToken); |
| seen(semicolon); |
| doPrint('endImport(' '$importKeyword, ' '$augmentToken, ' '$semicolon)'); |
| } |
| |
| @override |
| void handleRecoverImport(Token? semicolon) { |
| seen(semicolon); |
| doPrint('handleRecoverImport(' '$semicolon)'); |
| } |
| |
| @override |
| void beginConditionalUris(Token token) { |
| seen(token); |
| doPrint('beginConditionalUris(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endConditionalUris(int count) { |
| indent--; |
| doPrint('endConditionalUris(' '$count)'); |
| } |
| |
| @override |
| void beginConditionalUri(Token ifKeyword) { |
| seen(ifKeyword); |
| doPrint('beginConditionalUri(' '$ifKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endConditionalUri(Token ifKeyword, Token leftParen, Token? equalSign) { |
| indent--; |
| seen(ifKeyword); |
| seen(leftParen); |
| seen(equalSign); |
| doPrint('endConditionalUri(' '$ifKeyword, ' '$leftParen, ' '$equalSign)'); |
| } |
| |
| @override |
| void handleDottedName(int count, Token firstIdentifier) { |
| seen(firstIdentifier); |
| doPrint('handleDottedName(' '$count, ' '$firstIdentifier)'); |
| } |
| |
| @override |
| void beginImplicitCreationExpression(Token token) { |
| seen(token); |
| doPrint('beginImplicitCreationExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endImplicitCreationExpression(Token token, Token openAngleBracket) { |
| indent--; |
| seen(token); |
| seen(openAngleBracket); |
| doPrint('endImplicitCreationExpression(' '$token, ' '$openAngleBracket)'); |
| } |
| |
| @override |
| void beginInitializedIdentifier(Token token) { |
| seen(token); |
| doPrint('beginInitializedIdentifier(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endInitializedIdentifier(Token nameToken) { |
| indent--; |
| seen(nameToken); |
| doPrint('endInitializedIdentifier(' '$nameToken)'); |
| } |
| |
| @override |
| void beginFieldInitializer(Token token) { |
| seen(token); |
| doPrint('beginFieldInitializer(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endFieldInitializer(Token assignment, Token endToken) { |
| indent--; |
| seen(assignment); |
| seen(endToken); |
| doPrint('endFieldInitializer(' '$assignment, ' '$endToken)'); |
| } |
| |
| @override |
| void handleNoFieldInitializer(Token token) { |
| seen(token); |
| doPrint('handleNoFieldInitializer(' '$token)'); |
| } |
| |
| @override |
| void beginVariableInitializer(Token token) { |
| seen(token); |
| doPrint('beginVariableInitializer(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endVariableInitializer(Token assignmentOperator) { |
| indent--; |
| seen(assignmentOperator); |
| doPrint('endVariableInitializer(' '$assignmentOperator)'); |
| } |
| |
| @override |
| void handleNoVariableInitializer(Token token) { |
| seen(token); |
| doPrint('handleNoVariableInitializer(' '$token)'); |
| } |
| |
| @override |
| void beginInitializer(Token token) { |
| seen(token); |
| doPrint('beginInitializer(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endInitializer(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endInitializer(' '$endToken)'); |
| } |
| |
| @override |
| void beginInitializers(Token token) { |
| seen(token); |
| doPrint('beginInitializers(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endInitializers(int count, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endInitializers(' '$count, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void handleNoInitializers() { |
| doPrint('handleNoInitializers()'); |
| } |
| |
| @override |
| void handleInvalidExpression(Token token) { |
| seen(token); |
| doPrint('handleInvalidExpression(' '$token)'); |
| } |
| |
| @override |
| void handleInvalidFunctionBody(Token token) { |
| seen(token); |
| doPrint('handleInvalidFunctionBody(' '$token)'); |
| } |
| |
| @override |
| void handleInvalidTypeReference(Token token) { |
| seen(token); |
| doPrint('handleInvalidTypeReference(' '$token)'); |
| } |
| |
| @override |
| void handleLabel(Token token) { |
| seen(token); |
| doPrint('handleLabel(' '$token)'); |
| } |
| |
| @override |
| void beginLabeledStatement(Token token, int labelCount) { |
| seen(token); |
| doPrint('beginLabeledStatement(' '$token, ' '$labelCount)'); |
| indent++; |
| } |
| |
| @override |
| void endLabeledStatement(int labelCount) { |
| indent--; |
| doPrint('endLabeledStatement(' '$labelCount)'); |
| } |
| |
| @override |
| void beginLibraryAugmentation(Token augmentKeyword, Token libraryKeyword) { |
| seen(augmentKeyword); |
| seen(libraryKeyword); |
| doPrint('beginLibraryAugmentation(' '$augmentKeyword, ' '$libraryKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endLibraryAugmentation( |
| Token augmentKeyword, Token libraryKeyword, Token semicolon) { |
| indent--; |
| seen(augmentKeyword); |
| seen(libraryKeyword); |
| seen(semicolon); |
| doPrint('endLibraryAugmentation(' |
| '$augmentKeyword, ' |
| '$libraryKeyword, ' |
| '$semicolon)'); |
| } |
| |
| @override |
| void beginLibraryName(Token token) { |
| seen(token); |
| doPrint('beginLibraryName(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endLibraryName(Token libraryKeyword, Token semicolon, bool hasName) { |
| indent--; |
| seen(libraryKeyword); |
| seen(semicolon); |
| doPrint('endLibraryName(' '$libraryKeyword, ' '$semicolon, ' '$hasName)'); |
| } |
| |
| @override |
| void handleLiteralMapEntry(Token colon, Token endToken, |
| {Token? nullAwareKeyToken, Token? nullAwareValueToken}) { |
| seen(colon); |
| seen(endToken); |
| seen(nullAwareKeyToken); |
| seen(nullAwareValueToken); |
| doPrint('handleLiteralMapEntry(' |
| '$colon, ' |
| '$endToken, ' |
| '$nullAwareKeyToken, ' |
| '$nullAwareValueToken)'); |
| } |
| |
| @override |
| void handleMapPatternEntry(Token colon, Token endToken) { |
| seen(colon); |
| seen(endToken); |
| doPrint('handleMapPatternEntry(' '$colon, ' '$endToken)'); |
| } |
| |
| @override |
| void beginLiteralString(Token token) { |
| seen(token); |
| doPrint('beginLiteralString(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void handleInterpolationExpression(Token leftBracket, Token? rightBracket) { |
| seen(leftBracket); |
| seen(rightBracket); |
| doPrint('handleInterpolationExpression(' '$leftBracket, ' '$rightBracket)'); |
| } |
| |
| @override |
| void endLiteralString(int interpolationCount, Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endLiteralString(' '$interpolationCount, ' '$endToken)'); |
| } |
| |
| @override |
| void handleStringJuxtaposition(Token startToken, int literalCount) { |
| seen(startToken); |
| doPrint('handleStringJuxtaposition(' '$startToken, ' '$literalCount)'); |
| } |
| |
| @override |
| void beginMember() { |
| doPrint('beginMember()'); |
| indent++; |
| } |
| |
| @override |
| void handleInvalidMember(Token endToken) { |
| seen(endToken); |
| doPrint('handleInvalidMember(' '$endToken)'); |
| } |
| |
| @override |
| void endMember() { |
| indent--; |
| doPrint('endMember()'); |
| } |
| |
| @override |
| void beginMethod( |
| DeclarationKind declarationKind, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? varFinalOrConst, |
| Token? getOrSet, |
| Token name) { |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(varFinalOrConst); |
| seen(getOrSet); |
| seen(name); |
| doPrint('beginMethod(' |
| '$declarationKind, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$varFinalOrConst, ' |
| '$getOrSet, ' |
| '$name)'); |
| indent++; |
| } |
| |
| @override |
| void endClassMethod(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endClassMethod(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endMixinMethod(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endMixinMethod(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionMethod(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endExtensionMethod(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionTypeMethod(Token? getOrSet, Token beginToken, |
| Token beginParam, Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endExtensionTypeMethod(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endClassConstructor(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endClassConstructor(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endMixinConstructor(Token? getOrSet, Token beginToken, Token beginParam, |
| Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endMixinConstructor(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionConstructor(Token? getOrSet, Token beginToken, |
| Token beginParam, Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endExtensionConstructor(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void endExtensionTypeConstructor(Token? getOrSet, Token beginToken, |
| Token beginParam, Token? beginInitializers, Token endToken) { |
| indent--; |
| seen(getOrSet); |
| seen(beginToken); |
| seen(beginParam); |
| seen(beginInitializers); |
| seen(endToken); |
| doPrint('endExtensionTypeConstructor(' |
| '$getOrSet, ' |
| '$beginToken, ' |
| '$beginParam, ' |
| '$beginInitializers, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginMetadataStar(Token token) { |
| seen(token); |
| doPrint('beginMetadataStar(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endMetadataStar(int count) { |
| indent--; |
| doPrint('endMetadataStar(' '$count)'); |
| } |
| |
| @override |
| void beginMetadata(Token token) { |
| seen(token); |
| doPrint('beginMetadata(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endMetadata(Token beginToken, Token? periodBeforeName, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(periodBeforeName); |
| seen(endToken); |
| doPrint('endMetadata(' '$beginToken, ' '$periodBeforeName, ' '$endToken)'); |
| } |
| |
| @override |
| void beginOptionalFormalParameters(Token token) { |
| seen(token); |
| doPrint('beginOptionalFormalParameters(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endOptionalFormalParameters( |
| int count, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint( |
| 'endOptionalFormalParameters(' '$count, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginPart(Token token) { |
| seen(token); |
| doPrint('beginPart(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endPart(Token partKeyword, Token semicolon) { |
| indent--; |
| seen(partKeyword); |
| seen(semicolon); |
| doPrint('endPart(' '$partKeyword, ' '$semicolon)'); |
| } |
| |
| @override |
| void beginPartOf(Token token) { |
| seen(token); |
| doPrint('beginPartOf(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endPartOf( |
| Token partKeyword, Token ofKeyword, Token semicolon, bool hasName) { |
| indent--; |
| seen(partKeyword); |
| seen(ofKeyword); |
| seen(semicolon); |
| doPrint('endPartOf(' |
| '$partKeyword, ' |
| '$ofKeyword, ' |
| '$semicolon, ' |
| '$hasName)'); |
| } |
| |
| @override |
| void beginRedirectingFactoryBody(Token token) { |
| seen(token); |
| doPrint('beginRedirectingFactoryBody(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endRedirectingFactoryBody(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endRedirectingFactoryBody(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginReturnStatement(Token token) { |
| seen(token); |
| doPrint('beginReturnStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void handleNativeFunctionBody(Token nativeToken, Token semicolon) { |
| seen(nativeToken); |
| seen(semicolon); |
| doPrint('handleNativeFunctionBody(' '$nativeToken, ' '$semicolon)'); |
| } |
| |
| @override |
| void handleNativeFunctionBodyIgnored(Token nativeToken, Token semicolon) { |
| seen(nativeToken); |
| seen(semicolon); |
| doPrint('handleNativeFunctionBodyIgnored(' '$nativeToken, ' '$semicolon)'); |
| } |
| |
| @override |
| void handleNativeFunctionBodySkipped(Token nativeToken, Token semicolon) { |
| seen(nativeToken); |
| seen(semicolon); |
| doPrint('handleNativeFunctionBodySkipped(' '$nativeToken, ' '$semicolon)'); |
| } |
| |
| @override |
| void handleEmptyFunctionBody(Token semicolon) { |
| seen(semicolon); |
| doPrint('handleEmptyFunctionBody(' '$semicolon)'); |
| } |
| |
| @override |
| void handleExpressionFunctionBody(Token arrowToken, Token? endToken) { |
| seen(arrowToken); |
| seen(endToken); |
| doPrint('handleExpressionFunctionBody(' '$arrowToken, ' '$endToken)'); |
| } |
| |
| @override |
| void endReturnStatement( |
| bool hasExpression, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint( |
| 'endReturnStatement(' '$hasExpression, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void handleSend(Token beginToken, Token endToken) { |
| seen(beginToken); |
| seen(endToken); |
| doPrint('handleSend(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginShow(Token showKeyword) { |
| seen(showKeyword); |
| doPrint('beginShow(' '$showKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endShow(Token showKeyword) { |
| indent--; |
| seen(showKeyword); |
| doPrint('endShow(' '$showKeyword)'); |
| } |
| |
| @override |
| void beginSwitchStatement(Token token) { |
| seen(token); |
| doPrint('beginSwitchStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endSwitchStatement(Token switchKeyword, Token endToken) { |
| indent--; |
| seen(switchKeyword); |
| seen(endToken); |
| doPrint('endSwitchStatement(' '$switchKeyword, ' '$endToken)'); |
| } |
| |
| @override |
| void beginSwitchExpression(Token token) { |
| seen(token); |
| doPrint('beginSwitchExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endSwitchExpression(Token switchKeyword, Token endToken) { |
| indent--; |
| seen(switchKeyword); |
| seen(endToken); |
| doPrint('endSwitchExpression(' '$switchKeyword, ' '$endToken)'); |
| } |
| |
| @override |
| void beginSwitchBlock(Token token) { |
| seen(token); |
| doPrint('beginSwitchBlock(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endSwitchBlock(int caseCount, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endSwitchBlock(' '$caseCount, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginSwitchExpressionBlock(Token token) { |
| seen(token); |
| doPrint('beginSwitchExpressionBlock(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endSwitchExpressionBlock( |
| int caseCount, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endSwitchExpressionBlock(' |
| '$caseCount, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginLiteralSymbol(Token token) { |
| seen(token); |
| doPrint('beginLiteralSymbol(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endLiteralSymbol(Token hashToken, int identifierCount) { |
| indent--; |
| seen(hashToken); |
| doPrint('endLiteralSymbol(' '$hashToken, ' '$identifierCount)'); |
| } |
| |
| @override |
| void handleThrowExpression(Token throwToken, Token endToken) { |
| seen(throwToken); |
| seen(endToken); |
| doPrint('handleThrowExpression(' '$throwToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginRethrowStatement(Token token) { |
| seen(token); |
| doPrint('beginRethrowStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endRethrowStatement(Token rethrowToken, Token endToken) { |
| indent--; |
| seen(rethrowToken); |
| seen(endToken); |
| doPrint('endRethrowStatement(' '$rethrowToken, ' '$endToken)'); |
| } |
| |
| @override |
| void endTopLevelDeclaration(Token endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endTopLevelDeclaration(' '$endToken)'); |
| } |
| |
| @override |
| void handleInvalidTopLevelDeclaration(Token endToken) { |
| seen(endToken); |
| doPrint('handleInvalidTopLevelDeclaration(' '$endToken)'); |
| } |
| |
| @override |
| void beginTopLevelMember(Token token) { |
| seen(token); |
| doPrint('beginTopLevelMember(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void beginFields( |
| DeclarationKind declarationKind, |
| Token? abstractToken, |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| Token lastConsumed) { |
| seen(abstractToken); |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(lastConsumed); |
| doPrint('beginFields(' |
| '$declarationKind, ' |
| '$abstractToken, ' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$lastConsumed)'); |
| indent++; |
| } |
| |
| @override |
| void endTopLevelFields( |
| Token? augmentToken, |
| Token? externalToken, |
| Token? staticToken, |
| Token? covariantToken, |
| Token? lateToken, |
| Token? varFinalOrConst, |
| int count, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(augmentToken); |
| seen(externalToken); |
| seen(staticToken); |
| seen(covariantToken); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endTopLevelFields(' |
| '$augmentToken, ' |
| '$externalToken, ' |
| '$staticToken, ' |
| '$covariantToken, ' |
| '$lateToken, ' |
| '$varFinalOrConst, ' |
| '$count, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginTopLevelMethod( |
| Token lastConsumed, Token? augmentToken, Token? externalToken) { |
| seen(lastConsumed); |
| seen(augmentToken); |
| seen(externalToken); |
| doPrint('beginTopLevelMethod(' |
| '$lastConsumed, ' |
| '$augmentToken, ' |
| '$externalToken)'); |
| indent++; |
| } |
| |
| @override |
| void endTopLevelMethod(Token beginToken, Token? getOrSet, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(getOrSet); |
| seen(endToken); |
| doPrint('endTopLevelMethod(' '$beginToken, ' '$getOrSet, ' '$endToken)'); |
| } |
| |
| @override |
| void beginTryStatement(Token token) { |
| seen(token); |
| doPrint('beginTryStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void beginCatchClause(Token token) { |
| seen(token); |
| doPrint('beginCatchClause(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endCatchClause(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endCatchClause(' '$token)'); |
| } |
| |
| @override |
| void handleCatchBlock(Token? onKeyword, Token? catchKeyword, Token? comma) { |
| seen(onKeyword); |
| seen(catchKeyword); |
| seen(comma); |
| doPrint('handleCatchBlock(' '$onKeyword, ' '$catchKeyword, ' '$comma)'); |
| } |
| |
| @override |
| void handleFinallyBlock(Token finallyKeyword) { |
| seen(finallyKeyword); |
| doPrint('handleFinallyBlock(' '$finallyKeyword)'); |
| } |
| |
| @override |
| void endTryStatement( |
| int catchCount, Token tryKeyword, Token? finallyKeyword, Token endToken) { |
| indent--; |
| seen(tryKeyword); |
| seen(finallyKeyword); |
| seen(endToken); |
| doPrint('endTryStatement(' |
| '$catchCount, ' |
| '$tryKeyword, ' |
| '$finallyKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleType(Token beginToken, Token? questionMark) { |
| seen(beginToken); |
| seen(questionMark); |
| doPrint('handleType(' '$beginToken, ' '$questionMark)'); |
| } |
| |
| @override |
| void handleNonNullAssertExpression(Token bang) { |
| seen(bang); |
| doPrint('handleNonNullAssertExpression(' '$bang)'); |
| } |
| |
| @override |
| void handleNullAssertPattern(Token bang) { |
| seen(bang); |
| doPrint('handleNullAssertPattern(' '$bang)'); |
| } |
| |
| @override |
| void handleNullCheckPattern(Token question) { |
| seen(question); |
| doPrint('handleNullCheckPattern(' '$question)'); |
| } |
| |
| @override |
| void handleAssignedVariablePattern(Token variable) { |
| seen(variable); |
| doPrint('handleAssignedVariablePattern(' '$variable)'); |
| } |
| |
| @override |
| void handleDeclaredVariablePattern(Token? keyword, Token variable, |
| {required bool inAssignmentPattern}) { |
| seen(keyword); |
| seen(variable); |
| doPrint('handleDeclaredVariablePattern(' |
| '$keyword, ' |
| '$variable, ' |
| '$inAssignmentPattern)'); |
| } |
| |
| @override |
| void handleWildcardPattern(Token? keyword, Token wildcard) { |
| seen(keyword); |
| seen(wildcard); |
| doPrint('handleWildcardPattern(' '$keyword, ' '$wildcard)'); |
| } |
| |
| @override |
| void handleNoName(Token token) { |
| seen(token); |
| doPrint('handleNoName(' '$token)'); |
| } |
| |
| @override |
| void beginRecordType(Token leftBracket) { |
| seen(leftBracket); |
| doPrint('beginRecordType(' '$leftBracket)'); |
| indent++; |
| } |
| |
| @override |
| void endRecordType( |
| Token leftBracket, Token? questionMark, int count, bool hasNamedFields) { |
| indent--; |
| seen(leftBracket); |
| seen(questionMark); |
| doPrint('endRecordType(' |
| '$leftBracket, ' |
| '$questionMark, ' |
| '$count, ' |
| '$hasNamedFields)'); |
| } |
| |
| @override |
| void beginRecordTypeEntry() { |
| doPrint('beginRecordTypeEntry()'); |
| indent++; |
| } |
| |
| @override |
| void endRecordTypeEntry() { |
| indent--; |
| doPrint('endRecordTypeEntry()'); |
| } |
| |
| @override |
| void beginRecordTypeNamedFields(Token leftBracket) { |
| seen(leftBracket); |
| doPrint('beginRecordTypeNamedFields(' '$leftBracket)'); |
| indent++; |
| } |
| |
| @override |
| void endRecordTypeNamedFields(int count, Token leftBracket) { |
| indent--; |
| seen(leftBracket); |
| doPrint('endRecordTypeNamedFields(' '$count, ' '$leftBracket)'); |
| } |
| |
| @override |
| void beginFunctionType(Token beginToken) { |
| seen(beginToken); |
| doPrint('beginFunctionType(' '$beginToken)'); |
| indent++; |
| } |
| |
| @override |
| void endFunctionType(Token functionToken, Token? questionMark) { |
| indent--; |
| seen(functionToken); |
| seen(questionMark); |
| doPrint('endFunctionType(' '$functionToken, ' '$questionMark)'); |
| } |
| |
| @override |
| void beginTypeArguments(Token token) { |
| seen(token); |
| doPrint('beginTypeArguments(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endTypeArguments(int count, Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endTypeArguments(' '$count, ' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void handleInvalidTypeArguments(Token token) { |
| seen(token); |
| doPrint('handleInvalidTypeArguments(' '$token)'); |
| } |
| |
| @override |
| void handleNoTypeArguments(Token token) { |
| seen(token); |
| doPrint('handleNoTypeArguments(' '$token)'); |
| } |
| |
| @override |
| void beginTypeVariable(Token token) { |
| seen(token); |
| doPrint('beginTypeVariable(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void handleTypeVariablesDefined(Token token, int count) { |
| seen(token); |
| doPrint('handleTypeVariablesDefined(' '$token, ' '$count)'); |
| } |
| |
| @override |
| void endTypeVariable( |
| Token token, int index, Token? extendsOrSuper, Token? variance) { |
| indent--; |
| seen(token); |
| seen(extendsOrSuper); |
| seen(variance); |
| doPrint('endTypeVariable(' |
| '$token, ' |
| '$index, ' |
| '$extendsOrSuper, ' |
| '$variance)'); |
| } |
| |
| @override |
| void beginTypeVariables(Token token) { |
| seen(token); |
| doPrint('beginTypeVariables(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endTypeVariables(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endTypeVariables(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void reportVarianceModifierNotEnabled(Token? variance) { |
| seen(variance); |
| doPrint('reportVarianceModifierNotEnabled(' '$variance)'); |
| } |
| |
| @override |
| void beginFunctionExpression(Token token) { |
| seen(token); |
| doPrint('beginFunctionExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endFunctionExpression(Token beginToken, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endFunctionExpression(' '$beginToken, ' '$endToken)'); |
| } |
| |
| @override |
| void beginVariablesDeclaration( |
| Token token, Token? lateToken, Token? varFinalOrConst) { |
| seen(token); |
| seen(lateToken); |
| seen(varFinalOrConst); |
| doPrint('beginVariablesDeclaration(' |
| '$token, ' |
| '$lateToken, ' |
| '$varFinalOrConst)'); |
| indent++; |
| } |
| |
| @override |
| void endVariablesDeclaration(int count, Token? endToken) { |
| indent--; |
| seen(endToken); |
| doPrint('endVariablesDeclaration(' '$count, ' '$endToken)'); |
| } |
| |
| @override |
| void beginWhileStatement(Token token) { |
| seen(token); |
| doPrint('beginWhileStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endWhileStatement(Token whileKeyword, Token endToken) { |
| indent--; |
| seen(whileKeyword); |
| seen(endToken); |
| doPrint('endWhileStatement(' '$whileKeyword, ' '$endToken)'); |
| } |
| |
| @override |
| void beginAsOperatorType(Token operator) { |
| seen(operator); |
| doPrint('beginAsOperatorType(' '$operator)'); |
| indent++; |
| } |
| |
| @override |
| void endAsOperatorType(Token operator) { |
| indent--; |
| seen(operator); |
| doPrint('endAsOperatorType(' '$operator)'); |
| } |
| |
| @override |
| void handleAsOperator(Token operator) { |
| seen(operator); |
| doPrint('handleAsOperator(' '$operator)'); |
| } |
| |
| @override |
| void handleCastPattern(Token operator) { |
| seen(operator); |
| doPrint('handleCastPattern(' '$operator)'); |
| } |
| |
| @override |
| void handleAssignmentExpression(Token token, Token endToken) { |
| seen(token); |
| seen(endToken); |
| doPrint('handleAssignmentExpression(' '$token, ' '$endToken)'); |
| } |
| |
| @override |
| void beginBinaryExpression(Token token) { |
| seen(token); |
| doPrint('beginBinaryExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endBinaryExpression(Token token, Token endToken) { |
| indent--; |
| seen(token); |
| seen(endToken); |
| doPrint('endBinaryExpression(' '$token, ' '$endToken)'); |
| } |
| |
| @override |
| void beginBinaryPattern(Token token) { |
| seen(token); |
| doPrint('beginBinaryPattern(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endBinaryPattern(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endBinaryPattern(' '$token)'); |
| } |
| |
| @override |
| void handleEndingBinaryExpression(Token token, Token endToken) { |
| seen(token); |
| seen(endToken); |
| doPrint('handleEndingBinaryExpression(' '$token, ' '$endToken)'); |
| } |
| |
| @override |
| void beginConditionalExpression(Token question) { |
| seen(question); |
| doPrint('beginConditionalExpression(' '$question)'); |
| indent++; |
| } |
| |
| @override |
| void handleConditionalExpressionColon() { |
| doPrint('handleConditionalExpressionColon()'); |
| } |
| |
| @override |
| void endConditionalExpression(Token question, Token colon, Token endToken) { |
| indent--; |
| seen(question); |
| seen(colon); |
| seen(endToken); |
| doPrint('endConditionalExpression(' '$question, ' '$colon, ' '$endToken)'); |
| } |
| |
| @override |
| void beginConstExpression(Token constKeyword) { |
| seen(constKeyword); |
| doPrint('beginConstExpression(' '$constKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endConstExpression(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endConstExpression(' '$token)'); |
| } |
| |
| @override |
| void handleConstFactory(Token constKeyword) { |
| seen(constKeyword); |
| doPrint('handleConstFactory(' '$constKeyword)'); |
| } |
| |
| @override |
| void beginForControlFlow(Token? awaitToken, Token forToken) { |
| seen(awaitToken); |
| seen(forToken); |
| doPrint('beginForControlFlow(' '$awaitToken, ' '$forToken)'); |
| indent++; |
| } |
| |
| @override |
| void endForControlFlow(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endForControlFlow(' '$token)'); |
| } |
| |
| @override |
| void endForInControlFlow(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endForInControlFlow(' '$token)'); |
| } |
| |
| @override |
| void beginIfControlFlow(Token ifToken) { |
| seen(ifToken); |
| doPrint('beginIfControlFlow(' '$ifToken)'); |
| indent++; |
| } |
| |
| @override |
| void handleThenControlFlow(Token token) { |
| seen(token); |
| doPrint('handleThenControlFlow(' '$token)'); |
| } |
| |
| @override |
| void handleElseControlFlow(Token elseToken) { |
| seen(elseToken); |
| doPrint('handleElseControlFlow(' '$elseToken)'); |
| } |
| |
| @override |
| void endIfControlFlow(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endIfControlFlow(' '$token)'); |
| } |
| |
| @override |
| void endIfElseControlFlow(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endIfElseControlFlow(' '$token)'); |
| } |
| |
| @override |
| void handleSpreadExpression(Token spreadToken) { |
| seen(spreadToken); |
| doPrint('handleSpreadExpression(' '$spreadToken)'); |
| } |
| |
| @override |
| void handleNullAwareElement(Token nullAwareToken) { |
| seen(nullAwareToken); |
| doPrint('handleNullAwareElement(' '$nullAwareToken)'); |
| } |
| |
| @override |
| void handleRestPattern(Token dots, {required bool hasSubPattern}) { |
| seen(dots); |
| doPrint('handleRestPattern(' '$dots, ' '$hasSubPattern)'); |
| } |
| |
| @override |
| void beginFunctionTypedFormalParameter(Token token) { |
| seen(token); |
| doPrint('beginFunctionTypedFormalParameter(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endFunctionTypedFormalParameter(Token nameToken, Token? question) { |
| indent--; |
| seen(nameToken); |
| seen(question); |
| doPrint('endFunctionTypedFormalParameter(' '$nameToken, ' '$question)'); |
| } |
| |
| @override |
| void handleIdentifier(Token token, IdentifierContext context) { |
| seen(token); |
| doPrint('handleIdentifier(' '$token, ' '$context)'); |
| } |
| |
| @override |
| void handleIndexedExpression( |
| Token? question, Token openSquareBracket, Token closeSquareBracket) { |
| seen(question); |
| seen(openSquareBracket); |
| seen(closeSquareBracket); |
| doPrint('handleIndexedExpression(' |
| '$question, ' |
| '$openSquareBracket, ' |
| '$closeSquareBracket)'); |
| } |
| |
| @override |
| void beginIsOperatorType(Token operator) { |
| seen(operator); |
| doPrint('beginIsOperatorType(' '$operator)'); |
| indent++; |
| } |
| |
| @override |
| void endIsOperatorType(Token operator) { |
| indent--; |
| seen(operator); |
| doPrint('endIsOperatorType(' '$operator)'); |
| } |
| |
| @override |
| void handleIsOperator(Token isOperator, Token? not) { |
| seen(isOperator); |
| seen(not); |
| doPrint('handleIsOperator(' '$isOperator, ' '$not)'); |
| } |
| |
| @override |
| void handleLiteralBool(Token token) { |
| seen(token); |
| doPrint('handleLiteralBool(' '$token)'); |
| } |
| |
| @override |
| void handleBreakStatement( |
| bool hasTarget, Token breakKeyword, Token endToken) { |
| seen(breakKeyword); |
| seen(endToken); |
| doPrint( |
| 'handleBreakStatement(' '$hasTarget, ' '$breakKeyword, ' '$endToken)'); |
| } |
| |
| @override |
| void handleContinueStatement( |
| bool hasTarget, Token continueKeyword, Token endToken) { |
| seen(continueKeyword); |
| seen(endToken); |
| doPrint('handleContinueStatement(' |
| '$hasTarget, ' |
| '$continueKeyword, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleEmptyStatement(Token token) { |
| seen(token); |
| doPrint('handleEmptyStatement(' '$token)'); |
| } |
| |
| @override |
| void beginAssert(Token assertKeyword, Assert kind) { |
| seen(assertKeyword); |
| doPrint('beginAssert(' '$assertKeyword, ' '$kind)'); |
| indent++; |
| } |
| |
| @override |
| void endAssert(Token assertKeyword, Assert kind, Token leftParenthesis, |
| Token? commaToken, Token endToken) { |
| indent--; |
| seen(assertKeyword); |
| seen(leftParenthesis); |
| seen(commaToken); |
| seen(endToken); |
| doPrint('endAssert(' |
| '$assertKeyword, ' |
| '$kind, ' |
| '$leftParenthesis, ' |
| '$commaToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleLiteralDouble(Token token) { |
| seen(token); |
| doPrint('handleLiteralDouble(' '$token)'); |
| } |
| |
| @override |
| void handleLiteralDoubleWithSeparators(Token token) { |
| seen(token); |
| doPrint('handleLiteralDoubleWithSeparators(' '$token)'); |
| } |
| |
| @override |
| void handleLiteralInt(Token token) { |
| seen(token); |
| doPrint('handleLiteralInt(' '$token)'); |
| } |
| |
| @override |
| void handleLiteralIntWithSeparators(Token token) { |
| seen(token); |
| doPrint('handleLiteralIntWithSeparators(' '$token)'); |
| } |
| |
| @override |
| void handleLiteralList( |
| int count, Token leftBracket, Token? constKeyword, Token rightBracket) { |
| seen(leftBracket); |
| seen(constKeyword); |
| seen(rightBracket); |
| doPrint('handleLiteralList(' |
| '$count, ' |
| '$leftBracket, ' |
| '$constKeyword, ' |
| '$rightBracket)'); |
| } |
| |
| @override |
| void handleListPattern(int count, Token leftBracket, Token rightBracket) { |
| seen(leftBracket); |
| seen(rightBracket); |
| doPrint('handleListPattern(' '$count, ' '$leftBracket, ' '$rightBracket)'); |
| } |
| |
| @override |
| void handleLiteralSetOrMap( |
| int count, |
| Token leftBrace, |
| Token? constKeyword, |
| Token rightBrace, |
| bool hasSetEntry, |
| ) { |
| seen(leftBrace); |
| seen(constKeyword); |
| seen(rightBrace); |
| doPrint('handleLiteralSetOrMap(' |
| '$count, ' |
| '$leftBrace, ' |
| '$constKeyword, ' |
| '$rightBrace, ' |
| '$hasSetEntry)'); |
| } |
| |
| @override |
| void handleMapPattern(int count, Token leftBrace, Token rightBrace) { |
| seen(leftBrace); |
| seen(rightBrace); |
| doPrint('handleMapPattern(' '$count, ' '$leftBrace, ' '$rightBrace)'); |
| } |
| |
| @override |
| void handleLiteralNull(Token token) { |
| seen(token); |
| doPrint('handleLiteralNull(' '$token)'); |
| } |
| |
| @override |
| void handleNativeClause(Token nativeToken, bool hasName) { |
| seen(nativeToken); |
| doPrint('handleNativeClause(' '$nativeToken, ' '$hasName)'); |
| } |
| |
| @override |
| void handleNamedArgument(Token colon) { |
| seen(colon); |
| doPrint('handleNamedArgument(' '$colon)'); |
| } |
| |
| @override |
| void handlePatternField(Token? colon) { |
| seen(colon); |
| doPrint('handlePatternField(' '$colon)'); |
| } |
| |
| @override |
| void handleNamedRecordField(Token colon) { |
| seen(colon); |
| doPrint('handleNamedRecordField(' '$colon)'); |
| } |
| |
| @override |
| void beginNewExpression(Token token) { |
| seen(token); |
| doPrint('beginNewExpression(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endNewExpression(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endNewExpression(' '$token)'); |
| } |
| |
| @override |
| void handleNoArguments(Token token) { |
| seen(token); |
| doPrint('handleNoArguments(' '$token)'); |
| } |
| |
| @override |
| void handleNoConstructorReferenceContinuationAfterTypeArguments(Token token) { |
| seen(token); |
| doPrint('handleNoConstructorReferenceContinuationAfterTypeArguments(' |
| '$token)'); |
| } |
| |
| @override |
| void handleNoTypeNameInConstructorReference(Token token) { |
| seen(token); |
| doPrint('handleNoTypeNameInConstructorReference(' '$token)'); |
| } |
| |
| @override |
| void handleNoType(Token lastConsumed) { |
| seen(lastConsumed); |
| doPrint('handleNoType(' '$lastConsumed)'); |
| } |
| |
| @override |
| void handleNoTypeVariables(Token token) { |
| seen(token); |
| doPrint('handleNoTypeVariables(' '$token)'); |
| } |
| |
| @override |
| void handleOperator(Token token) { |
| seen(token); |
| doPrint('handleOperator(' '$token)'); |
| } |
| |
| @override |
| void handleSwitchCaseNoWhenClause(Token token) { |
| seen(token); |
| doPrint('handleSwitchCaseNoWhenClause(' '$token)'); |
| } |
| |
| @override |
| void handleSwitchExpressionCasePattern(Token token) { |
| seen(token); |
| doPrint('handleSwitchExpressionCasePattern(' '$token)'); |
| } |
| |
| @override |
| void handleSymbolVoid(Token token) { |
| seen(token); |
| doPrint('handleSymbolVoid(' '$token)'); |
| } |
| |
| @override |
| void handleOperatorName(Token operatorKeyword, Token token) { |
| seen(operatorKeyword); |
| seen(token); |
| doPrint('handleOperatorName(' '$operatorKeyword, ' '$token)'); |
| } |
| |
| @override |
| void handleInvalidOperatorName(Token operatorKeyword, Token token) { |
| seen(operatorKeyword); |
| seen(token); |
| doPrint('handleInvalidOperatorName(' '$operatorKeyword, ' '$token)'); |
| } |
| |
| @override |
| void handleParenthesizedCondition(Token token, Token? case_, Token? when) { |
| seen(token); |
| seen(case_); |
| seen(when); |
| doPrint('handleParenthesizedCondition(' '$token, ' '$case_, ' '$when)'); |
| } |
| |
| @override |
| void beginPattern(Token token) { |
| seen(token); |
| doPrint('beginPattern(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void beginPatternGuard(Token when) { |
| seen(when); |
| doPrint('beginPatternGuard(' '$when)'); |
| indent++; |
| } |
| |
| @override |
| void beginParenthesizedExpressionOrRecordLiteral(Token token) { |
| seen(token); |
| doPrint('beginParenthesizedExpressionOrRecordLiteral(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void beginSwitchCaseWhenClause(Token when) { |
| seen(when); |
| doPrint('beginSwitchCaseWhenClause(' '$when)'); |
| indent++; |
| } |
| |
| @override |
| void endRecordLiteral(Token token, int count, Token? constKeyword) { |
| indent--; |
| seen(token); |
| seen(constKeyword); |
| doPrint('endRecordLiteral(' '$token, ' '$count, ' '$constKeyword)'); |
| } |
| |
| @override |
| void handleRecordPattern(Token token, int count) { |
| seen(token); |
| doPrint('handleRecordPattern(' '$token, ' '$count)'); |
| } |
| |
| @override |
| void endPattern(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endPattern(' '$token)'); |
| } |
| |
| @override |
| void endPatternGuard(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endPatternGuard(' '$token)'); |
| } |
| |
| @override |
| void endParenthesizedExpression(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endParenthesizedExpression(' '$token)'); |
| } |
| |
| @override |
| void endSwitchCaseWhenClause(Token token) { |
| indent--; |
| seen(token); |
| doPrint('endSwitchCaseWhenClause(' '$token)'); |
| } |
| |
| @override |
| void handleParenthesizedPattern(Token token) { |
| seen(token); |
| doPrint('handleParenthesizedPattern(' '$token)'); |
| } |
| |
| @override |
| void beginConstantPattern(Token? constKeyword) { |
| seen(constKeyword); |
| doPrint('beginConstantPattern(' '$constKeyword)'); |
| indent++; |
| } |
| |
| @override |
| void endConstantPattern(Token? constKeyword) { |
| indent--; |
| seen(constKeyword); |
| doPrint('endConstantPattern(' '$constKeyword)'); |
| } |
| |
| @override |
| void handleObjectPattern( |
| Token firstIdentifier, Token? dot, Token? secondIdentifier) { |
| seen(firstIdentifier); |
| seen(dot); |
| seen(secondIdentifier); |
| doPrint('handleObjectPattern(' |
| '$firstIdentifier, ' |
| '$dot, ' |
| '$secondIdentifier)'); |
| } |
| |
| @override |
| void handleQualified(Token period) { |
| seen(period); |
| doPrint('handleQualified(' '$period)'); |
| } |
| |
| @override |
| void handleStringPart(Token token) { |
| seen(token); |
| doPrint('handleStringPart(' '$token)'); |
| } |
| |
| @override |
| void handleSuperExpression(Token token, IdentifierContext context) { |
| seen(token); |
| doPrint('handleSuperExpression(' '$token, ' '$context)'); |
| } |
| |
| @override |
| void handleAugmentSuperExpression( |
| Token augmentToken, Token superToken, IdentifierContext context) { |
| seen(augmentToken); |
| seen(superToken); |
| doPrint('handleAugmentSuperExpression(' |
| '$augmentToken, ' |
| '$superToken, ' |
| '$context)'); |
| } |
| |
| @override |
| void beginSwitchCase(int labelCount, int expressionCount, Token beginToken) { |
| seen(beginToken); |
| doPrint( |
| 'beginSwitchCase(' '$labelCount, ' '$expressionCount, ' '$beginToken)'); |
| indent++; |
| } |
| |
| @override |
| void endSwitchCase( |
| int labelCount, |
| int expressionCount, |
| Token? defaultKeyword, |
| Token? colonAfterDefault, |
| int statementCount, |
| Token beginToken, |
| Token endToken) { |
| indent--; |
| seen(defaultKeyword); |
| seen(colonAfterDefault); |
| seen(beginToken); |
| seen(endToken); |
| doPrint('endSwitchCase(' |
| '$labelCount, ' |
| '$expressionCount, ' |
| '$defaultKeyword, ' |
| '$colonAfterDefault, ' |
| '$statementCount, ' |
| '$beginToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void beginSwitchExpressionCase() { |
| doPrint('beginSwitchExpressionCase()'); |
| indent++; |
| } |
| |
| @override |
| void endSwitchExpressionCase( |
| Token beginToken, Token? when, Token arrow, Token endToken) { |
| indent--; |
| seen(beginToken); |
| seen(when); |
| seen(arrow); |
| seen(endToken); |
| doPrint('endSwitchExpressionCase(' |
| '$beginToken, ' |
| '$when, ' |
| '$arrow, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleThisExpression(Token token, IdentifierContext context) { |
| seen(token); |
| doPrint('handleThisExpression(' '$token, ' '$context)'); |
| } |
| |
| @override |
| void handleUnaryPostfixAssignmentExpression(Token token) { |
| seen(token); |
| doPrint('handleUnaryPostfixAssignmentExpression(' '$token)'); |
| } |
| |
| @override |
| void handleUnaryPrefixExpression(Token token) { |
| seen(token); |
| doPrint('handleUnaryPrefixExpression(' '$token)'); |
| } |
| |
| @override |
| void handleRelationalPattern(Token token) { |
| seen(token); |
| doPrint('handleRelationalPattern(' '$token)'); |
| } |
| |
| @override |
| void handleUnaryPrefixAssignmentExpression(Token token) { |
| seen(token); |
| doPrint('handleUnaryPrefixAssignmentExpression(' '$token)'); |
| } |
| |
| @override |
| void beginFormalParameterDefaultValueExpression() { |
| doPrint('beginFormalParameterDefaultValueExpression()'); |
| indent++; |
| } |
| |
| @override |
| void endFormalParameterDefaultValueExpression() { |
| indent--; |
| doPrint('endFormalParameterDefaultValueExpression()'); |
| } |
| |
| @override |
| void handleValuedFormalParameter( |
| Token equals, Token token, FormalParameterKind kind) { |
| seen(equals); |
| seen(token); |
| doPrint('handleValuedFormalParameter(' '$equals, ' '$token, ' '$kind)'); |
| } |
| |
| @override |
| void handleFormalParameterWithoutValue(Token token) { |
| seen(token); |
| doPrint('handleFormalParameterWithoutValue(' '$token)'); |
| } |
| |
| @override |
| void handleVoidKeyword(Token token) { |
| seen(token); |
| doPrint('handleVoidKeyword(' '$token)'); |
| } |
| |
| @override |
| void handleVoidKeywordWithTypeArguments(Token token) { |
| seen(token); |
| doPrint('handleVoidKeywordWithTypeArguments(' '$token)'); |
| } |
| |
| @override |
| void beginYieldStatement(Token token) { |
| seen(token); |
| doPrint('beginYieldStatement(' '$token)'); |
| indent++; |
| } |
| |
| @override |
| void endYieldStatement(Token yieldToken, Token? starToken, Token endToken) { |
| indent--; |
| seen(yieldToken); |
| seen(starToken); |
| seen(endToken); |
| doPrint('endYieldStatement(' '$yieldToken, ' '$starToken, ' '$endToken)'); |
| } |
| |
| @override |
| void endInvalidYieldStatement(Token beginToken, Token? starToken, |
| Token endToken, MessageCode errorCode) { |
| indent--; |
| seen(beginToken); |
| seen(starToken); |
| seen(endToken); |
| doPrint('endInvalidYieldStatement(' |
| '$beginToken, ' |
| '$starToken, ' |
| '$endToken, ' |
| '$errorCode)'); |
| } |
| |
| @override |
| void handleRecoverableError( |
| Message message, Token startToken, Token endToken) { |
| seen(startToken); |
| seen(endToken); |
| doPrint( |
| 'handleRecoverableError(' '$message, ' '$startToken, ' '$endToken)'); |
| checkEof(endToken); |
| } |
| |
| @override |
| void handleExperimentNotEnabled( |
| ExperimentalFlag experimentalFlag, Token startToken, Token endToken) { |
| seen(startToken); |
| seen(endToken); |
| doPrint('handleExperimentNotEnabled(' |
| '$experimentalFlag, ' |
| '$startToken, ' |
| '$endToken)'); |
| } |
| |
| @override |
| void handleErrorToken(ErrorToken token) { |
| doPrint('handleErrorToken(' '$token)'); |
| handleRecoverableError(token.assertionMessage, token, token); |
| } |
| |
| @override |
| void handleUnescapeError( |
| Message message, Token location, int stringOffset, int length) { |
| seen(location); |
| doPrint('handleUnescapeError(' |
| '$message, ' |
| '$location, ' |
| '$stringOffset, ' |
| '$length)'); |
| } |
| |
| @override |
| void handleInvalidStatement(Token token, Message message) { |
| seen(token); |
| doPrint('handleInvalidStatement(' '$token, ' '$message)'); |
| } |
| |
| @override |
| void handleScript(Token token) { |
| seen(token); |
| doPrint('handleScript(' '$token)'); |
| } |
| |
| @override |
| void handleTypeArgumentApplication(Token openAngleBracket) { |
| seen(openAngleBracket); |
| doPrint('handleTypeArgumentApplication(' '$openAngleBracket)'); |
| } |
| |
| @override |
| void handleNewAsIdentifier(Token token) { |
| seen(token); |
| doPrint('handleNewAsIdentifier(' '$token)'); |
| } |
| |
| @override |
| void handlePatternVariableDeclarationStatement( |
| Token keyword, Token equals, Token semicolon) { |
| seen(keyword); |
| seen(equals); |
| seen(semicolon); |
| doPrint('handlePatternVariableDeclarationStatement(' |
| '$keyword, ' |
| '$equals, ' |
| '$semicolon)'); |
| } |
| |
| @override |
| void handlePatternAssignment(Token equals) { |
| seen(equals); |
| doPrint('handlePatternAssignment(' '$equals)'); |
| } |
| } |