Package: org.apache.groovy.parser.antlr4

## [Java] Class AstBuilder

- org.apache.groovy.parser.antlr4.AstBuilder

-     public class AstBuilder
      extends org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor

  Builds the AST from the parse tree generated by Antlr4.

- - ### Constructor Summary

    Constructors
    Constructor and description
    `AstBuilder(SourceUnit sourceUnit, boolean groovydocEnabled, boolean runtimeGroovydocEnabled)`

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public BlockStatement` | `appendStatementsToBlockStatement(BlockStatement bs, Statement statements)`
    `` | `public ModuleNode` | `buildAST()`
    `` | `public void` | `syntaxError(Recognizer recognizer, Object offendingSymbol, int line, int charPositionInLine, String msg, RecognitionException e)`
    `` | `public Object` | `visit(ParseTree tree)` Visit tree safely, no NPE occurred when the tree is null.
    `` | `public BinaryExpression` | `visitAdditiveExprAlt(AdditiveExprAltContext ctx)`
    `` | `public BinaryExpression` | `visitAndExprAlt(AndExprAltContext ctx)`
    `` | `public ClassNode` | `visitAnnotatedQualifiedClassName(AnnotatedQualifiedClassNameContext ctx)`
    `` | `public AnnotationNode` | `visitAnnotation(AnnotationContext ctx)`
    `` | `public String` | `visitAnnotationName(AnnotationNameContext ctx)`
    `` | `public List<AnnotationNode>` | `visitAnnotationsOpt(AnnotationsOptContext ctx)`
    `` | `public InnerClassNode` | `visitAnonymousInnerClassDeclaration(AnonymousInnerClassDeclarationContext ctx)`
    `` | `public Expression` | `visitArguments(ArgumentsContext ctx)`
    `` | `public List<Expression>` | `visitArrayInitializer(ArrayInitializerContext ctx)`
    `` | `public AssertStatement` | `visitAssertStatement(AssertStatementContext ctx)`
    `` | `public BinaryExpression` | `visitAssignmentExprAlt(AssignmentExprAltContext ctx)`
    `` | `public Statement` | `visitBlock(BlockContext ctx)`
    `` | `public Statement` | `visitBlockStatement(BlockStatementContext ctx)`
    `` | `public BlockStatement` | `visitBlockStatements(BlockStatementsContext ctx)`
    `` | `public BlockStatement` | `visitBlockStatementsOpt(BlockStatementsOptContext ctx)`
    `` | `public ConstantExpression` | `visitBooleanLiteralAlt(BooleanLiteralAltContext ctx)`
    `` | `public BreakStatement` | `visitBreakStatement(BreakStatementContext ctx)`
    `` | `public VariableExpression` | `visitBuiltInType(BuiltInTypeContext ctx)`
    `` | `public CastExpression` | `visitCastExprAlt(CastExprAltContext ctx)`
    `` | `public ClassNode` | `visitCastParExpression(CastParExpressionContext ctx)`
    `` | `public List<CatchStatement>` | `visitCatchClause(CatchClauseContext ctx)` Multi-catch(1..*) clause will be unpacked to several normal catch clauses, so the return type is List
    `` | `public List<ClassNode>` | `visitCatchType(CatchTypeContext ctx)`
    `` | `public Void` | `visitClassBody(ClassBodyContext ctx)`
    `` | `public Void` | `visitClassBodyDeclaration(ClassBodyDeclarationContext ctx)`
    `` | `public ClassNode` | `visitClassDeclaration(ClassDeclarationContext ctx)`
    `` | `public String` | `visitClassName(ClassNameContext ctx)`
    `` | `public ModifierNode` | `visitClassOrInterfaceModifier(ClassOrInterfaceModifierContext ctx)`
    `` | `public List<ModifierNode>` | `visitClassOrInterfaceModifiers(ClassOrInterfaceModifiersContext ctx)`
    `` | `public List<ModifierNode>` | `visitClassOrInterfaceModifiersOpt(ClassOrInterfaceModifiersOptContext ctx)`
    `` | `public ClassNode` | `visitClassOrInterfaceType(ClassOrInterfaceTypeContext ctx)`
    `` | `public Tuple2<Parameter, Expression>` | `visitClassicalForControl(ClassicalForControlContext ctx)`
    `` | `public ClosureExpression` | `visitClosure(ClosureContext ctx)`
    `` | `public ClosureExpression` | `visitClosureOrLambdaExpression(ClosureOrLambdaExpressionContext ctx)`
    `` | `public Expression` | `visitCommandArgument(CommandArgumentContext ctx)`
    `` | `public ExpressionStatement` | `visitCommandExprAlt(CommandExprAltContext ctx)`
    `` | `public Expression` | `visitCommandExpression(CommandExpressionContext ctx)`
    `` | `public MethodNode` | `visitCompactConstructorDeclaration(CompactConstructorDeclarationContext ctx)`
    `` | `public ModuleNode` | `visitCompilationUnit(CompilationUnitContext ctx)`
    `` | `public Expression` | `visitConditionalExprAlt(ConditionalExprAltContext ctx)`
    `` | `public Statement` | `visitConditionalStatement(ConditionalStatementContext ctx)`
    `` | `public ContinueStatement` | `visitContinueStatement(ContinueStatementContext ctx)`
    `` | `public ClassNode` | `visitCreatedName(CreatedNameContext ctx)`
    `` | `public Expression` | `visitCreator(CreatorContext ctx)`
    `` | `public Tuple3<Expression, List<AnnotationNode>, TerminalNode>` | `visitDim(DimContext ctx)`
    `` | `public DoWhileStatement` | `visitDoWhileStmtAlt(DoWhileStmtAltContext ctx)`
    `` | `public Expression` | `visitDynamicMemberName(DynamicMemberNameContext ctx)`
    `` | `public Expression` | `visitElementValue(ElementValueContext ctx)`
    `` | `public ListExpression` | `visitElementValueArrayInitializer(ElementValueArrayInitializerContext ctx)`
    `` | `public Tuple2<String, Expression>` | `visitElementValuePair(ElementValuePairContext ctx)`
    `` | `public Map<String, Expression>` | `visitElementValuePairs(ElementValuePairsContext ctx)`
    `` | `public List<Tuple2<String, Expression>>` | `visitElementValues(ElementValuesContext ctx)`
    `` | `public List<List<AnnotationNode>>` | `visitEmptyDims(EmptyDimsContext ctx)`
    `` | `public List<List<AnnotationNode>>` | `visitEmptyDimsOpt(EmptyDimsOptContext ctx)`
    `` | `public Expression` | `visitEnhancedArgumentListElement(EnhancedArgumentListElementContext ctx)`
    `` | `public Expression` | `visitEnhancedArgumentListInPar(EnhancedArgumentListInParContext ctx)`
    `` | `public Tuple2<Parameter, Expression>` | `visitEnhancedForControl(EnhancedForControlContext ctx)`
    `` | `public Expression` | `visitEnhancedStatementExpression(EnhancedStatementExpressionContext ctx)`
    `` | `public FieldNode` | `visitEnumConstant(EnumConstantContext ctx)`
    `` | `public List<FieldNode>` | `visitEnumConstants(EnumConstantsContext ctx)`
    `` | `public BinaryExpression` | `visitEqualityExprAlt(EqualityExprAltContext ctx)`
    `` | `public BinaryExpression` | `visitExclusiveOrExprAlt(ExclusiveOrExprAltContext ctx)`
    `` | `public Expression` | `visitExpressionInPar(ExpressionInParContext ctx)`
    `` | `public List<Expression>` | `visitExpressionList(ExpressionListContext ctx)`
    `` | `public Expression` | `visitExpressionListElement(ExpressionListElementContext ctx)`
    `` | `public Void` | `visitFieldDeclaration(FieldDeclarationContext ctx)`
    `` | `public Statement` | `visitFinallyBlock(FinallyBlockContext ctx)`
    `` | `public ConstantExpression` | `visitFloatingPointLiteralAlt(FloatingPointLiteralAltContext ctx)`
    `` | `public Tuple2<Parameter, Expression>` | `visitForControl(ForControlContext ctx)`
    `` | `public Expression` | `visitForInit(ForInitContext ctx)`
    `` | `public ForStatement` | `visitForStmtAlt(ForStmtAltContext ctx)`
    `` | `public Expression` | `visitForUpdate(ForUpdateContext ctx)`
    `` | `public Parameter` | `visitFormalParameter(FormalParameterContext ctx)`
    `` | `public Parameter[]` | `visitFormalParameterList(FormalParameterListContext ctx)`
    `` | `public Parameter[]` | `visitFormalParameters(FormalParametersContext ctx)`
    `` | `public GStringExpression` | `visitGstring(GstringContext ctx)`
    `` | `public Expression` | `visitGstringPath(GstringPathContext ctx)`
    `` | `public Expression` | `visitGstringValue(GstringValueContext ctx)`
    `` | `public String` | `visitIdentifier(IdentifierContext ctx)`
    `` | `public Expression` | `visitIdentifierPrmrAlt(IdentifierPrmrAltContext ctx)`
    `` | `public IfStatement` | `visitIfElseStatement(IfElseStatementContext ctx)`
    `` | `public ImportNode` | `visitImportDeclaration(ImportDeclarationContext ctx)`
    `` | `public BinaryExpression` | `visitInclusiveOrExprAlt(InclusiveOrExprAltContext ctx)`
    `` | `public Tuple2<Token, Expression>` | `visitIndexPropertyArgs(IndexPropertyArgsContext ctx)`
    `` | `public ConstantExpression` | `visitIntegerLiteralAlt(IntegerLiteralAltContext ctx)`
    `` | `public ConstantExpression` | `visitKeywords(KeywordsContext ctx)`
    `` | `public Statement` | `visitLabeledStmtAlt(LabeledStmtAltContext ctx)`
    `` | `public Statement` | `visitLambdaBody(LambdaBodyContext ctx)`
    `` | `public ListExpression` | `visitList(ListContext ctx)`
    `` | `public AstBuilder.DeclarationListStatement` | `visitLocalVariableDeclaration(LocalVariableDeclarationContext ctx)`
    `` | `public BinaryExpression` | `visitLogicalAndExprAlt(LogicalAndExprAltContext ctx)`
    `` | `public BinaryExpression` | `visitLogicalOrExprAlt(LogicalOrExprAltContext ctx)`
    `` | `public Statement` | `visitLoopStmtAlt(LoopStmtAltContext ctx)`
    `` | `public MapExpression` | `visitMap(MapContext ctx)`
    `` | `public MapEntryExpression` | `visitMapEntry(MapEntryContext ctx)`
    `` | `public Expression` | `visitMapEntryLabel(MapEntryLabelContext ctx)`
    `` | `public List<MapEntryExpression>` | `visitMapEntryList(MapEntryListContext ctx)`
    `` | `public Void` | `visitMemberDeclaration(MemberDeclarationContext ctx)`
    `` | `public Statement` | `visitMethodBody(MethodBodyContext ctx)`
    `` | `public MethodNode` | `visitMethodDeclaration(MethodDeclarationContext ctx)`
    `` | `public String` | `visitMethodName(MethodNameContext ctx)`
    `` | `public ModifierNode` | `visitModifier(ModifierContext ctx)`
    `` | `public List<ModifierNode>` | `visitModifiers(ModifiersContext ctx)`
    `` | `public List<ModifierNode>` | `visitModifiersOpt(ModifiersOptContext ctx)`
    `` | `public BinaryExpression` | `visitMultipleAssignmentExprAlt(MultipleAssignmentExprAltContext ctx)`
    `` | `public BinaryExpression` | `visitMultiplicativeExprAlt(MultiplicativeExprAltContext ctx)`
    `` | `public Expression` | `visitNamePart(NamePartContext ctx)`
    `` | `public List<MapEntryExpression>` | `visitNamedPropertyArgs(NamedPropertyArgsContext ctx)`
    `` | `public Expression` | `visitNewPrmrAlt(NewPrmrAltContext ctx)`
    `` | `public GenericsType[]` | `visitNonWildcardTypeArguments(NonWildcardTypeArgumentsContext ctx)`
    `` | `public ConstantExpression` | `visitNullLiteralAlt(NullLiteralAltContext ctx)`
    `` | `public PackageNode` | `visitPackageDeclaration(PackageDeclarationContext ctx)`
    `` | `public Expression` | `visitParExpression(ParExpressionContext ctx)`
    `` | `public Expression` | `visitPathElement(PathElementContext ctx)`
    `` | `public Expression` | `visitPathExpression(PathExpressionContext ctx)`
    `` | `public Expression` | `visitPostfixExpression(PostfixExpressionContext ctx)`
    `` | `public BinaryExpression` | `visitPowerExprAlt(PowerExprAltContext ctx)`
    `` | `public ClassNode` | `visitPrimitiveType(PrimitiveTypeContext ctx)`
    `` | `public void` | `visitPropertyExpression(PropertyExpression expression)`
    `` | `public ClassNode` | `visitQualifiedClassName(QualifiedClassNameContext ctx)`
    `` | `public ClassNode[]` | `visitQualifiedClassNameList(QualifiedClassNameListContext ctx)`
    `` | `public String` | `visitQualifiedName(QualifiedNameContext ctx)`
    `` | `public ClassNode` | `visitQualifiedStandardClassName(QualifiedStandardClassNameContext ctx)`
    `` | `public BinaryExpression` | `visitRegexExprAlt(RegexExprAltContext ctx)`
    `` | `public Expression` | `visitRelationalExprAlt(RelationalExprAltContext ctx)`
    `` | `public ExpressionStatement` | `visitResource(ResourceContext ctx)`
    `` | `public List<ExpressionStatement>` | `visitResourceList(ResourceListContext ctx)`
    `` | `public List<ExpressionStatement>` | `visitResources(ResourcesContext ctx)`
    `` | `public void` | `visitReturnStatement(ReturnStatement statement)`
    `` | `public ReturnStatement` | `visitReturnStmtAlt(ReturnStmtAltContext ctx)`
    `` | `public ClassNode` | `visitReturnType(ReturnTypeContext ctx)`
    `` | `public List<ASTNode>` | `visitScriptStatements(ScriptStatementsContext ctx)`
    `` | `public Expression` | `visitShiftExprAlt(ShiftExprAltContext ctx)`
    `` | `public LambdaExpression` | `visitStandardLambdaExpression(StandardLambdaExpressionContext ctx)`
    `` | `public Parameter[]` | `visitStandardLambdaParameters(StandardLambdaParametersContext ctx)`
    `` | `public ConstantExpression` | `visitStringLiteral(StringLiteralContext ctx)`
    `` | `public VariableExpression` | `visitSuperPrmrAlt(SuperPrmrAltContext ctx)`
    `` | `public Tuple3<List<Statement>, Boolean, Boolean>` | `visitSwitchBlockStatementExpressionGroup(SwitchBlockStatementExpressionGroupContext ctx)`
    `` | `public List<Statement>` | `visitSwitchBlockStatementGroup(SwitchBlockStatementGroupContext ctx)`
    `` | `public Expression` | `visitSwitchExprAlt(SwitchExprAltContext ctx)`
    `` | `public MethodCallExpression` | `visitSwitchExpression(SwitchExpressionContext ctx)`
         switch(a) {
             case 0, 1  ->   'a';
             case 2     ->   'b';
             default    ->   'z';
         }
    the above code will be transformed to:
         {->
             switch(a) {
                 case 0:
                 case 1:  return 'a';
                 case 2:  return 'b';
                 default: return 'z';
             }
         }()
    `` | `public Tuple3<Token, List<Expression>, Integer>` | `visitSwitchExpressionLabel(SwitchExpressionLabelContext ctx)`
    `` | `public Tuple2<Token, Expression>` | `visitSwitchLabel(SwitchLabelContext ctx)`
    `` | `public SwitchStatement` | `visitSwitchStatement(SwitchStatementContext ctx)`
    `` | `public SynchronizedStatement` | `visitSynchronizedStmtAlt(SynchronizedStmtAltContext ctx)`
    `` | `public Parameter` | `visitThisFormalParameter(ThisFormalParameterContext ctx)`
    `` | `public VariableExpression` | `visitThisPrmrAlt(ThisPrmrAltContext ctx)`
    `` | `public void` | `visitThrowStatement(ThrowStatement statement)`
    `` | `public ThrowStatement` | `visitThrowStmtAlt(ThrowStmtAltContext ctx)`
    `` | `public Statement` | `visitTryCatchStatement(TryCatchStatementContext ctx)`
    `` | `public ClassNode` | `visitType(TypeContext ctx)`
    `` | `public GenericsType` | `visitTypeArgument(TypeArgumentContext ctx)`
    `` | `public GenericsType[]` | `visitTypeArguments(TypeArgumentsContext ctx)`
    `` | `public GenericsType[]` | `visitTypeArgumentsOrDiamond(TypeArgumentsOrDiamondContext ctx)`
    `` | `public ClassNode[]` | `visitTypeBound(TypeBoundContext ctx)`
    `` | `public ClassNode` | `visitTypeDeclaration(TypeDeclarationContext ctx)`
    `` | `public ClassNode[]` | `visitTypeList(TypeListContext ctx)`
    `` | `public VariableExpression` | `visitTypeNamePair(TypeNamePairContext ctx)`
    `` | `public List<Expression>` | `visitTypeNamePairs(TypeNamePairsContext ctx)`
    `` | `public GenericsType` | `visitTypeParameter(TypeParameterContext ctx)`
    `` | `public GenericsType[]` | `visitTypeParameters(TypeParametersContext ctx)`
    `` | `public Expression` | `visitUnaryAddExprAlt(UnaryAddExprAltContext ctx)`
    `` | `public Expression` | `visitUnaryNotExprAlt(UnaryNotExprAltContext ctx)`
    `` | `public AstBuilder.DeclarationListStatement` | `visitVariableDeclaration(VariableDeclarationContext ctx)`
    `` | `public DeclarationExpression` | `visitVariableDeclarator(VariableDeclaratorContext ctx)`
    `` | `public VariableExpression` | `visitVariableDeclaratorId(VariableDeclaratorIdContext ctx)`
    `` | `public List<DeclarationExpression>` | `visitVariableDeclarators(VariableDeclaratorsContext ctx)`
    `` | `public Expression` | `visitVariableInitializer(VariableInitializerContext ctx)`
    `` | `public List<Expression>` | `visitVariableInitializers(VariableInitializersContext ctx)`
    `` | `public ModifierNode` | `visitVariableModifier(VariableModifierContext ctx)`
    `` | `public List<ModifierNode>` | `visitVariableModifiers(VariableModifiersContext ctx)`
    `` | `public List<ModifierNode>` | `visitVariableModifiersOpt(VariableModifiersOptContext ctx)`
    `` | `public TupleExpression` | `visitVariableNames(VariableNamesContext ctx)`
    `` | `public WhileStatement` | `visitWhileStmtAlt(WhileStmtAltContext ctx)`
    `` | `public ReturnStatement` | `visitYieldStatement(YieldStatementContext ctx)`
    `` | `public ReturnStatement` | `visitYieldStmtAlt(YieldStmtAltContext ctx)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor` | `org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAnnotation(org.apache.groovy.parser.antlr4.GroovyParser$AnnotationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBlock(org.apache.groovy.parser.antlr4.GroovyParser$BlockContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitIdentifier(org.apache.groovy.parser.antlr4.GroovyParser$IdentifierContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLiteral(org.apache.groovy.parser.antlr4.GroovyParser$LiteralContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPrimitiveType(org.apache.groovy.parser.antlr4.GroovyParser$PrimitiveTypeContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitModifiers(org.apache.groovy.parser.antlr4.GroovyParser$ModifiersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeParameter(org.apache.groovy.parser.antlr4.GroovyParser$TypeParameterContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitType(org.apache.groovy.parser.antlr4.GroovyParser$TypeContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitStatement(org.apache.groovy.parser.antlr4.GroovyParser$StatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeArgument(org.apache.groovy.parser.antlr4.GroovyParser$TypeArgumentContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitReturnType(org.apache.groovy.parser.antlr4.GroovyParser$ReturnTypeContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAnonymousInnerClassDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$AnonymousInnerClassDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitContinueStatement(org.apache.groovy.parser.antlr4.GroovyParser$ContinueStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBreakStatement(org.apache.groovy.parser.antlr4.GroovyParser$BreakStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBlockStatement(org.apache.groovy.parser.antlr4.GroovyParser$BlockStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAssertStatement(org.apache.groovy.parser.antlr4.GroovyParser$AssertStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPostfixExpression(org.apache.groovy.parser.antlr4.GroovyParser$PostfixExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitGstring(org.apache.groovy.parser.antlr4.GroovyParser$GstringContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitParExpression(org.apache.groovy.parser.antlr4.GroovyParser$ParExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitQualifiedName(org.apache.groovy.parser.antlr4.GroovyParser$QualifiedNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitForControl(org.apache.groovy.parser.antlr4.GroovyParser$ForControlContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitResources(org.apache.groovy.parser.antlr4.GroovyParser$ResourcesContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitForUpdate(org.apache.groovy.parser.antlr4.GroovyParser$ForUpdateContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitResourceList(org.apache.groovy.parser.antlr4.GroovyParser$ResourceListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitFinallyBlock(org.apache.groovy.parser.antlr4.GroovyParser$FinallyBlockContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitForInit(org.apache.groovy.parser.antlr4.GroovyParser$ForInitContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCatchType(org.apache.groovy.parser.antlr4.GroovyParser$CatchTypeContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassBody(org.apache.groovy.parser.antlr4.GroovyParser$ClassBodyContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeList(org.apache.groovy.parser.antlr4.GroovyParser$TypeListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEnumConstants(org.apache.groovy.parser.antlr4.GroovyParser$EnumConstantsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeBound(org.apache.groovy.parser.antlr4.GroovyParser$TypeBoundContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitArguments(org.apache.groovy.parser.antlr4.GroovyParser$ArgumentsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitModifiersOpt(org.apache.groovy.parser.antlr4.GroovyParser$ModifiersOptContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassName(org.apache.groovy.parser.antlr4.GroovyParser$ClassNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMethodName(org.apache.groovy.parser.antlr4.GroovyParser$MethodNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMethodBody(org.apache.groovy.parser.antlr4.GroovyParser$MethodBodyContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeNamePairs(org.apache.groovy.parser.antlr4.GroovyParser$TypeNamePairsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitElementValue(org.apache.groovy.parser.antlr4.GroovyParser$ElementValueContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitStringLiteral(org.apache.groovy.parser.antlr4.GroovyParser$StringLiteralContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCreator(org.apache.groovy.parser.antlr4.GroovyParser$CreatorContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitNamePart(org.apache.groovy.parser.antlr4.GroovyParser$NamePartContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMapEntryList(org.apache.groovy.parser.antlr4.GroovyParser$MapEntryListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMapEntry(org.apache.groovy.parser.antlr4.GroovyParser$MapEntryContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCompilationUnit(org.apache.groovy.parser.antlr4.GroovyParser$CompilationUnitContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableDeclaratorId(org.apache.groovy.parser.antlr4.GroovyParser$VariableDeclaratorIdContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEnhancedForControl(org.apache.groovy.parser.antlr4.GroovyParser$EnhancedForControlContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitExpressionInPar(org.apache.groovy.parser.antlr4.GroovyParser$ExpressionInParContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassicalForControl(org.apache.groovy.parser.antlr4.GroovyParser$ClassicalForControlContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitIfElseStatement(org.apache.groovy.parser.antlr4.GroovyParser$IfElseStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchStatement(org.apache.groovy.parser.antlr4.GroovyParser$SwitchStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAnnotationsOpt(org.apache.groovy.parser.antlr4.GroovyParser$AnnotationsOptContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitScriptStatements(org.apache.groovy.parser.antlr4.GroovyParser$ScriptStatementsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLocalVariableDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$LocalVariableDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitExpressionList(org.apache.groovy.parser.antlr4.GroovyParser$ExpressionListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitFormalParameters(org.apache.groovy.parser.antlr4.GroovyParser$FormalParametersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitYieldStatement(org.apache.groovy.parser.antlr4.GroovyParser$YieldStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeParameters(org.apache.groovy.parser.antlr4.GroovyParser$TypeParametersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCompactConstructorDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$CompactConstructorDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassOrInterfaceModifiersOpt(org.apache.groovy.parser.antlr4.GroovyParser$ClassOrInterfaceModifiersOptContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMemberDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$MemberDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMethodDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$MethodDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitFieldDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$FieldDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$ClassDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$VariableDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitQualifiedClassNameList(org.apache.groovy.parser.antlr4.GroovyParser$QualifiedClassNameListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitIndexPropertyArgs(org.apache.groovy.parser.antlr4.GroovyParser$IndexPropertyArgsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBlockStatementsOpt(org.apache.groovy.parser.antlr4.GroovyParser$BlockStatementsOptContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEnhancedArgumentListInPar(org.apache.groovy.parser.antlr4.GroovyParser$EnhancedArgumentListInParContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEnhancedStatementExpression(org.apache.groovy.parser.antlr4.GroovyParser$EnhancedStatementExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableDeclarators(org.apache.groovy.parser.antlr4.GroovyParser$VariableDeclaratorsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitDynamicMemberName(org.apache.groovy.parser.antlr4.GroovyParser$DynamicMemberNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitNonWildcardTypeArguments(org.apache.groovy.parser.antlr4.GroovyParser$NonWildcardTypeArgumentsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCastParExpression(org.apache.groovy.parser.antlr4.GroovyParser$CastParExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitExpressionListElement(org.apache.groovy.parser.antlr4.GroovyParser$ExpressionListElementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClosureOrLambdaExpression(org.apache.groovy.parser.antlr4.GroovyParser$ClosureOrLambdaExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableInitializer(org.apache.groovy.parser.antlr4.GroovyParser$VariableInitializerContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitNamedPropertyArgs(org.apache.groovy.parser.antlr4.GroovyParser$NamedPropertyArgsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCommandExpression(org.apache.groovy.parser.antlr4.GroovyParser$CommandExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPathExpression(org.apache.groovy.parser.antlr4.GroovyParser$PathExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableInitializers(org.apache.groovy.parser.antlr4.GroovyParser$VariableInitializersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitStandardLambdaExpression(org.apache.groovy.parser.antlr4.GroovyParser$StandardLambdaExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitQualifiedClassName(org.apache.groovy.parser.antlr4.GroovyParser$QualifiedClassNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassOrInterfaceType(org.apache.groovy.parser.antlr4.GroovyParser$ClassOrInterfaceTypeContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitQualifiedStandardClassName(org.apache.groovy.parser.antlr4.GroovyParser$QualifiedStandardClassNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitElementValuePairs(org.apache.groovy.parser.antlr4.GroovyParser$ElementValuePairsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAnnotationName(org.apache.groovy.parser.antlr4.GroovyParser$AnnotationNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitElementValueArrayInitializer(org.apache.groovy.parser.antlr4.GroovyParser$ElementValueArrayInitializerContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassOrInterfaceModifiers(org.apache.groovy.parser.antlr4.GroovyParser$ClassOrInterfaceModifiersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableModifiersOpt(org.apache.groovy.parser.antlr4.GroovyParser$VariableModifiersOptContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitStandardLambdaParameters(org.apache.groovy.parser.antlr4.GroovyParser$StandardLambdaParametersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableModifiers(org.apache.groovy.parser.antlr4.GroovyParser$VariableModifiersContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBlockStatements(org.apache.groovy.parser.antlr4.GroovyParser$BlockStatementsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitFormalParameterList(org.apache.groovy.parser.antlr4.GroovyParser$FormalParameterListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeArgumentsOrDiamond(org.apache.groovy.parser.antlr4.GroovyParser$TypeArgumentsOrDiamondContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitArrayInitializer(org.apache.groovy.parser.antlr4.GroovyParser$ArrayInitializerContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitThisFormalParameter(org.apache.groovy.parser.antlr4.GroovyParser$ThisFormalParameterContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassOrInterfaceModifier(org.apache.groovy.parser.antlr4.GroovyParser$ClassOrInterfaceModifierContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitConditionalStatement(org.apache.groovy.parser.antlr4.GroovyParser$ConditionalStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitIdentifierPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$IdentifierPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLabeledStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$LabeledStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEqualityExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$EqualityExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCommandArgument(org.apache.groovy.parser.antlr4.GroovyParser$CommandArgumentContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableDeclarator(org.apache.groovy.parser.antlr4.GroovyParser$VariableDeclaratorContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClassBodyDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$ClassBodyDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAssignmentExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$AssignmentExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitExclusiveOrExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$ExclusiveOrExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitConditionalExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$ConditionalExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitNullLiteralAlt(org.apache.groovy.parser.antlr4.GroovyParser$NullLiteralAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitUnaryNotExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$UnaryNotExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitInclusiveOrExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$InclusiveOrExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitIntegerLiteralAlt(org.apache.groovy.parser.antlr4.GroovyParser$IntegerLiteralAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitFormalParameter(org.apache.groovy.parser.antlr4.GroovyParser$FormalParameterContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitElementValuePair(org.apache.groovy.parser.antlr4.GroovyParser$ElementValuePairContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitUnaryAddExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$UnaryAddExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPackageDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$PackageDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLogicalAndExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$LogicalAndExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitFloatingPointLiteralAlt(org.apache.groovy.parser.antlr4.GroovyParser$FloatingPointLiteralAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchExpressionLabel(org.apache.groovy.parser.antlr4.GroovyParser$SwitchExpressionLabelContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMultipleAssignmentExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$MultipleAssignmentExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAdditiveExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$AdditiveExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEnhancedArgumentListElement(org.apache.groovy.parser.antlr4.GroovyParser$EnhancedArgumentListElementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTryCatchStatement(org.apache.groovy.parser.antlr4.GroovyParser$TryCatchStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSynchronizedStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$SynchronizedStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableModifier(org.apache.groovy.parser.antlr4.GroovyParser$VariableModifierContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitImportDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$ImportDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCommandExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$CommandExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeDeclaration(org.apache.groovy.parser.antlr4.GroovyParser$TypeDeclarationContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLogicalOrExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$LogicalOrExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitDoWhileStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$DoWhileStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitRelationalExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$RelationalExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAnnotatedQualifiedClassName(org.apache.groovy.parser.antlr4.GroovyParser$AnnotatedQualifiedClassNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMultiplicativeExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$MultiplicativeExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchBlockStatementGroup(org.apache.groovy.parser.antlr4.GroovyParser$SwitchBlockStatementGroupContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBooleanLiteralAlt(org.apache.groovy.parser.antlr4.GroovyParser$BooleanLiteralAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEnumConstant(org.apache.groovy.parser.antlr4.GroovyParser$EnumConstantContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitQualifiedNameElement(org.apache.groovy.parser.antlr4.GroovyParser$QualifiedNameElementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitElementValuePairName(org.apache.groovy.parser.antlr4.GroovyParser$ElementValuePairNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitContinueStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$ContinueStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTryCatchStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$TryCatchStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitExpressionStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$ExpressionStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitScriptStatement(org.apache.groovy.parser.antlr4.GroovyParser$ScriptStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitStringLiteralAlt(org.apache.groovy.parser.antlr4.GroovyParser$StringLiteralAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBuiltInTypePrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$BuiltInTypePrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitGstringPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$GstringPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPostfixExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$PostfixExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitStatementExpression(org.apache.groovy.parser.antlr4.GroovyParser$StatementExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitQualifiedNameElements(org.apache.groovy.parser.antlr4.GroovyParser$QualifiedNameElementsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitConditionalStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$ConditionalStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLiteralPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$LiteralPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeArguments(org.apache.groovy.parser.antlr4.GroovyParser$TypeArgumentsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitVariableNames(org.apache.groovy.parser.antlr4.GroovyParser$VariableNamesContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCreatedName(org.apache.groovy.parser.antlr4.GroovyParser$CreatedNameContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMapEntryLabel(org.apache.groovy.parser.antlr4.GroovyParser$MapEntryLabelContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitKeywords(org.apache.groovy.parser.antlr4.GroovyParser$KeywordsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitGstringPath(org.apache.groovy.parser.antlr4.GroovyParser$GstringPathContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLambdaBody(org.apache.groovy.parser.antlr4.GroovyParser$LambdaBodyContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClosure(org.apache.groovy.parser.antlr4.GroovyParser$ClosureContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEmptyDims(org.apache.groovy.parser.antlr4.GroovyParser$EmptyDimsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEmptyDimsOpt(org.apache.groovy.parser.antlr4.GroovyParser$EmptyDimsOptContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitElementValues(org.apache.groovy.parser.antlr4.GroovyParser$ElementValuesContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPathElement(org.apache.groovy.parser.antlr4.GroovyParser$PathElementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBuiltInType(org.apache.groovy.parser.antlr4.GroovyParser$BuiltInTypeContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTypeNamePair(org.apache.groovy.parser.antlr4.GroovyParser$TypeNamePairContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchLabel(org.apache.groovy.parser.antlr4.GroovyParser$SwitchLabelContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMap(org.apache.groovy.parser.antlr4.GroovyParser$MapContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitDim(org.apache.groovy.parser.antlr4.GroovyParser$DimContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitResource(org.apache.groovy.parser.antlr4.GroovyParser$ResourceContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCatchClause(org.apache.groovy.parser.antlr4.GroovyParser$CatchClauseContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitList(org.apache.groovy.parser.antlr4.GroovyParser$ListContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitForStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$ForStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitWhileStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$WhileStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLoopStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$LoopStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitReturnStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$ReturnStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitYieldStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$YieldStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitGstringValue(org.apache.groovy.parser.antlr4.GroovyParser$GstringValueContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitModifier(org.apache.groovy.parser.antlr4.GroovyParser$ModifierContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitThrowStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$ThrowStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitShiftExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$ShiftExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAndExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$AndExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$SwitchExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitRegexExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$RegexExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSuperPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$SuperPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitThisPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$ThisPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitNewPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$NewPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitCastExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$CastExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPowerExprAlt(org.apache.groovy.parser.antlr4.GroovyParser$PowerExprAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitListPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$ListPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitMapPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$MapPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitParenPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$ParenPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBlockStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$BlockStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitBreakStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$BreakStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitAssertStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$AssertStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitEmptyStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$EmptyStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLoopStatement(org.apache.groovy.parser.antlr4.GroovyParser$LoopStatementContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSep(org.apache.groovy.parser.antlr4.GroovyParser$SepContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitExpression(org.apache.groovy.parser.antlr4.GroovyParser$ExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitNls(org.apache.groovy.parser.antlr4.GroovyParser$NlsContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitPrimary(org.apache.groovy.parser.antlr4.GroovyParser$PrimaryContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitRparen(org.apache.groovy.parser.antlr4.GroovyParser$RparenContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchExpression(org.apache.groovy.parser.antlr4.GroovyParser$SwitchExpressionContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitLocalVariableDeclarationStmtAlt(org.apache.groovy.parser.antlr4.GroovyParser$LocalVariableDeclarationStmtAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitSwitchBlockStatementExpressionGroup(org.apache.groovy.parser.antlr4.GroovyParser$SwitchBlockStatementExpressionGroupContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitClosureOrLambdaExpressionPrmrAlt(org.apache.groovy.parser.antlr4.GroovyParser$ClosureOrLambdaExpressionPrmrAltContext), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visit(org.antlr.v4.runtime.tree.ParseTree), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitChildren(org.antlr.v4.runtime.tree.RuleNode), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitTerminal(org.antlr.v4.runtime.tree.TerminalNode), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#visitErrorNode(org.antlr.v4.runtime.tree.ErrorNode), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#wait(long, int), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#wait(), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#wait(long), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#equals(java.lang.Object), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#toString(), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#hashCode(), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#getClass(), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#notify(), org.apache.groovy.parser.antlr4.GroovyParserBaseVisitor#notifyAll()`

- - ### Constructor Detail

    - #### public AstBuilder(SourceUnit sourceUnit, boolean groovydocEnabled, boolean runtimeGroovydocEnabled)

  - ### Method Detail

    - #### public BlockStatement appendStatementsToBlockStatement(BlockStatement bs, Statement statements)

    - #### public ModuleNode buildAST()

    - #### @Override
      public void syntaxError(Recognizer recognizer, Object offendingSymbol, int line, int charPositionInLine, String msg, RecognitionException e)

    - #### @Override
      public Object visit(ParseTree tree)

      Visit tree safely, no NPE occurred when the tree is null.

      Parameters:
        `tree` - an AST node
      Returns:
        the visiting result

    - #### @Override
      public BinaryExpression visitAdditiveExprAlt(AdditiveExprAltContext ctx)

    - #### @Override
      public BinaryExpression visitAndExprAlt(AndExprAltContext ctx)

    - #### @Override
      public ClassNode visitAnnotatedQualifiedClassName(AnnotatedQualifiedClassNameContext ctx)

    - #### @Override
      public AnnotationNode visitAnnotation(AnnotationContext ctx)

    - #### @Override
      public String visitAnnotationName(AnnotationNameContext ctx)

    - #### @Override
      public List<AnnotationNode> visitAnnotationsOpt(AnnotationsOptContext ctx)

    - #### @Override
      public InnerClassNode visitAnonymousInnerClassDeclaration(AnonymousInnerClassDeclarationContext ctx)

    - #### @Override
      public Expression visitArguments(ArgumentsContext ctx)

    - #### @Override
      public List<Expression> visitArrayInitializer(ArrayInitializerContext ctx)

    - #### @Override
      public AssertStatement visitAssertStatement(AssertStatementContext ctx)

    - #### @Override
      public BinaryExpression visitAssignmentExprAlt(AssignmentExprAltContext ctx)

    - #### @Override
      public Statement visitBlock(BlockContext ctx)

    - #### @Override
      public Statement visitBlockStatement(BlockStatementContext ctx)

    - #### @Override
      public BlockStatement visitBlockStatements(BlockStatementsContext ctx)

    - #### @Override
      public BlockStatement visitBlockStatementsOpt(BlockStatementsOptContext ctx)

    - #### @Override
      public ConstantExpression visitBooleanLiteralAlt(BooleanLiteralAltContext ctx)

    - #### @Override
      public BreakStatement visitBreakStatement(BreakStatementContext ctx)

    - #### @Override
      public VariableExpression visitBuiltInType(BuiltInTypeContext ctx)

    - #### @Override
      public CastExpression visitCastExprAlt(CastExprAltContext ctx)

    - #### @Override
      public ClassNode visitCastParExpression(CastParExpressionContext ctx)

    - #### @Override
      public List<CatchStatement> visitCatchClause(CatchClauseContext ctx)

      Multi-catch(1..*) clause will be unpacked to several normal catch clauses, so the return type is List

      Parameters:
        `ctx` - the parse tree
      Returns:
        a list of CatchStatement instances

    - #### @Override
      public List<ClassNode> visitCatchType(CatchTypeContext ctx)

    - #### @Override
      public Void visitClassBody(ClassBodyContext ctx)

    - #### @Override
      public Void visitClassBodyDeclaration(ClassBodyDeclarationContext ctx)

    - #### @Override
      public ClassNode visitClassDeclaration(ClassDeclarationContext ctx)

    - #### @Override
      public String visitClassName(ClassNameContext ctx)

    - #### @Override
      public ModifierNode visitClassOrInterfaceModifier(ClassOrInterfaceModifierContext ctx)

    - #### @Override
      public List<ModifierNode> visitClassOrInterfaceModifiers(ClassOrInterfaceModifiersContext ctx)

    - #### @Override
      public List<ModifierNode> visitClassOrInterfaceModifiersOpt(ClassOrInterfaceModifiersOptContext ctx)

    - #### @Override
      public ClassNode visitClassOrInterfaceType(ClassOrInterfaceTypeContext ctx)

    - #### @Override
      public Tuple2<Parameter, Expression> visitClassicalForControl(ClassicalForControlContext ctx)

    - #### @Override
      public ClosureExpression visitClosure(ClosureContext ctx)

    - #### @Override
      public ClosureExpression visitClosureOrLambdaExpression(ClosureOrLambdaExpressionContext ctx)

    - #### @Override
      public Expression visitCommandArgument(CommandArgumentContext ctx)

    - #### @Override
      public ExpressionStatement visitCommandExprAlt(CommandExprAltContext ctx)

    - #### @Override
      public Expression visitCommandExpression(CommandExpressionContext ctx)

    - #### @Override
      public MethodNode visitCompactConstructorDeclaration(CompactConstructorDeclarationContext ctx)

    - #### @Override
      public ModuleNode visitCompilationUnit(CompilationUnitContext ctx)

    - #### @Override
      public Expression visitConditionalExprAlt(ConditionalExprAltContext ctx)

    - #### @Override
      public Statement visitConditionalStatement(ConditionalStatementContext ctx)

    - #### @Override
      public ContinueStatement visitContinueStatement(ContinueStatementContext ctx)

    - #### @Override
      public ClassNode visitCreatedName(CreatedNameContext ctx)

    - #### @Override
      public Expression visitCreator(CreatorContext ctx)

    - #### @Override
      public Tuple3<Expression, List<AnnotationNode>, TerminalNode> visitDim(DimContext ctx)

    - #### @Override
      public DoWhileStatement visitDoWhileStmtAlt(DoWhileStmtAltContext ctx)

    - #### @Override
      public Expression visitDynamicMemberName(DynamicMemberNameContext ctx)

    - #### @Override
      public Expression visitElementValue(ElementValueContext ctx)

    - #### @Override
      public ListExpression visitElementValueArrayInitializer(ElementValueArrayInitializerContext ctx)

    - #### @Override
      public Tuple2<String, Expression> visitElementValuePair(ElementValuePairContext ctx)

    - #### @Override
      public Map<String, Expression> visitElementValuePairs(ElementValuePairsContext ctx)

    - #### @Override
      public List<Tuple2<String, Expression>> visitElementValues(ElementValuesContext ctx)

    - #### @Override
      public List<List<AnnotationNode>> visitEmptyDims(EmptyDimsContext ctx)

    - #### @Override
      public List<List<AnnotationNode>> visitEmptyDimsOpt(EmptyDimsOptContext ctx)

    - #### @Override
      public Expression visitEnhancedArgumentListElement(EnhancedArgumentListElementContext ctx)

    - #### @Override
      public Expression visitEnhancedArgumentListInPar(EnhancedArgumentListInParContext ctx)

    - #### @Override
      public Tuple2<Parameter, Expression> visitEnhancedForControl(EnhancedForControlContext ctx)

    - #### @Override
      public Expression visitEnhancedStatementExpression(EnhancedStatementExpressionContext ctx)

    - #### @Override
      public FieldNode visitEnumConstant(EnumConstantContext ctx)

    - #### @Override
      public List<FieldNode> visitEnumConstants(EnumConstantsContext ctx)

    - #### @Override
      public BinaryExpression visitEqualityExprAlt(EqualityExprAltContext ctx)

    - #### @Override
      public BinaryExpression visitExclusiveOrExprAlt(ExclusiveOrExprAltContext ctx)

    - #### @Override
      public Expression visitExpressionInPar(ExpressionInParContext ctx)

    - #### @Override
      public List<Expression> visitExpressionList(ExpressionListContext ctx)

    - #### @Override
      public Expression visitExpressionListElement(ExpressionListElementContext ctx)

    - #### @Override
      public Void visitFieldDeclaration(FieldDeclarationContext ctx)

    - #### @Override
      public Statement visitFinallyBlock(FinallyBlockContext ctx)

    - #### @Override
      public ConstantExpression visitFloatingPointLiteralAlt(FloatingPointLiteralAltContext ctx)

    - #### @Override
      public Tuple2<Parameter, Expression> visitForControl(ForControlContext ctx)

    - #### @Override
      public Expression visitForInit(ForInitContext ctx)

    - #### @Override
      public ForStatement visitForStmtAlt(ForStmtAltContext ctx)

    - #### @Override
      public Expression visitForUpdate(ForUpdateContext ctx)

    - #### @Override
      public Parameter visitFormalParameter(FormalParameterContext ctx)

    - #### @Override
      public Parameter[] visitFormalParameterList(FormalParameterListContext ctx)

    - #### @Override
      public Parameter[] visitFormalParameters(FormalParametersContext ctx)

    - #### @Override
      public GStringExpression visitGstring(GstringContext ctx)

    - #### @Override
      public Expression visitGstringPath(GstringPathContext ctx)

    - #### @Override
      public Expression visitGstringValue(GstringValueContext ctx)

    - #### @Override
      public String visitIdentifier(IdentifierContext ctx)

    - #### @Override
      public Expression visitIdentifierPrmrAlt(IdentifierPrmrAltContext ctx)

    - #### @Override
      public IfStatement visitIfElseStatement(IfElseStatementContext ctx)

    - #### @Override
      public ImportNode visitImportDeclaration(ImportDeclarationContext ctx)

    - #### @Override
      public BinaryExpression visitInclusiveOrExprAlt(InclusiveOrExprAltContext ctx)

    - #### @Override
      public Tuple2<Token, Expression> visitIndexPropertyArgs(IndexPropertyArgsContext ctx)

    - #### @Override
      public ConstantExpression visitIntegerLiteralAlt(IntegerLiteralAltContext ctx)

    - #### @Override
      public ConstantExpression visitKeywords(KeywordsContext ctx)

    - #### @Override
      public Statement visitLabeledStmtAlt(LabeledStmtAltContext ctx)

    - #### @Override
      public Statement visitLambdaBody(LambdaBodyContext ctx)

    - #### @Override
      public ListExpression visitList(ListContext ctx)

    - #### @Override
      public AstBuilder.DeclarationListStatement visitLocalVariableDeclaration(LocalVariableDeclarationContext ctx)

    - #### @Override
      public BinaryExpression visitLogicalAndExprAlt(LogicalAndExprAltContext ctx)

    - #### @Override
      public BinaryExpression visitLogicalOrExprAlt(LogicalOrExprAltContext ctx)

    - #### @Override
      public Statement visitLoopStmtAlt(LoopStmtAltContext ctx)

    - #### @Override
      public MapExpression visitMap(MapContext ctx)

    - #### @Override
      public MapEntryExpression visitMapEntry(MapEntryContext ctx)

    - #### @Override
      public Expression visitMapEntryLabel(MapEntryLabelContext ctx)

    - #### @Override
      public List<MapEntryExpression> visitMapEntryList(MapEntryListContext ctx)

    - #### @Override
      public Void visitMemberDeclaration(MemberDeclarationContext ctx)

    - #### @Override
      public Statement visitMethodBody(MethodBodyContext ctx)

    - #### @Override
      public MethodNode visitMethodDeclaration(MethodDeclarationContext ctx)

    - #### @Override
      public String visitMethodName(MethodNameContext ctx)

    - #### @Override
      public ModifierNode visitModifier(ModifierContext ctx)

    - #### @Override
      public List<ModifierNode> visitModifiers(ModifiersContext ctx)

    - #### @Override
      public List<ModifierNode> visitModifiersOpt(ModifiersOptContext ctx)

    - #### @Override
      public BinaryExpression visitMultipleAssignmentExprAlt(MultipleAssignmentExprAltContext ctx)

    - #### @Override
      public BinaryExpression visitMultiplicativeExprAlt(MultiplicativeExprAltContext ctx)

    - #### @Override
      public Expression visitNamePart(NamePartContext ctx)

    - #### @Override
      public List<MapEntryExpression> visitNamedPropertyArgs(NamedPropertyArgsContext ctx)

    - #### @Override
      public Expression visitNewPrmrAlt(NewPrmrAltContext ctx)

    - #### @Override
      public GenericsType[] visitNonWildcardTypeArguments(NonWildcardTypeArgumentsContext ctx)

    - #### @Override
      public ConstantExpression visitNullLiteralAlt(NullLiteralAltContext ctx)

    - #### @Override
      public PackageNode visitPackageDeclaration(PackageDeclarationContext ctx)

    - #### @Override
      public Expression visitParExpression(ParExpressionContext ctx)

    - #### @Override
      public Expression visitPathElement(PathElementContext ctx)

    - #### @Override
      public Expression visitPathExpression(PathExpressionContext ctx)

    - #### @Override
      public Expression visitPostfixExpression(PostfixExpressionContext ctx)

    - #### @Override
      public BinaryExpression visitPowerExprAlt(PowerExprAltContext ctx)

    - #### @Override
      public ClassNode visitPrimitiveType(PrimitiveTypeContext ctx)

    - #### @Override
      public void visitPropertyExpression(PropertyExpression expression)

    - #### @Override
      public ClassNode visitQualifiedClassName(QualifiedClassNameContext ctx)

    - #### @Override
      public ClassNode[] visitQualifiedClassNameList(QualifiedClassNameListContext ctx)

    - #### @Override
      public String visitQualifiedName(QualifiedNameContext ctx)

    - #### @Override
      public ClassNode visitQualifiedStandardClassName(QualifiedStandardClassNameContext ctx)

    - #### @Override
      public BinaryExpression visitRegexExprAlt(RegexExprAltContext ctx)

    - #### @Override
      public Expression visitRelationalExprAlt(RelationalExprAltContext ctx)

    - #### @Override
      public ExpressionStatement visitResource(ResourceContext ctx)

    - #### @Override
      public List<ExpressionStatement> visitResourceList(ResourceListContext ctx)

    - #### @Override
      public List<ExpressionStatement> visitResources(ResourcesContext ctx)

    - #### @Override
      public void visitReturnStatement(ReturnStatement statement)

    - #### @Override
      public ReturnStatement visitReturnStmtAlt(ReturnStmtAltContext ctx)

    - #### @Override
      public ClassNode visitReturnType(ReturnTypeContext ctx)

    - #### @Override
      public List<ASTNode> visitScriptStatements(ScriptStatementsContext ctx)

    - #### @Override
      public Expression visitShiftExprAlt(ShiftExprAltContext ctx)

    - #### @Override
      public LambdaExpression visitStandardLambdaExpression(StandardLambdaExpressionContext ctx)

    - #### @Override
      public Parameter[] visitStandardLambdaParameters(StandardLambdaParametersContext ctx)

    - #### @Override
      public ConstantExpression visitStringLiteral(StringLiteralContext ctx)

    - #### @Override
      public VariableExpression visitSuperPrmrAlt(SuperPrmrAltContext ctx)

    - #### @Override
      @SuppressWarnings("unchecked")
      public Tuple3<List<Statement>, Boolean, Boolean> visitSwitchBlockStatementExpressionGroup(SwitchBlockStatementExpressionGroupContext ctx)

    - #### @Override
      @SuppressWarnings("unchecked")
      public List<Statement> visitSwitchBlockStatementGroup(SwitchBlockStatementGroupContext ctx)

    - #### @Override
      public Expression visitSwitchExprAlt(SwitchExprAltContext ctx)

    - #### @Override
      public MethodCallExpression visitSwitchExpression(SwitchExpressionContext ctx)

           switch(a) {
               case 0, 1  ->   'a';
               case 2     ->   'b';
               default    ->   'z';
           }

      the above code will be transformed to:

           {->
               switch(a) {
                   case 0:
                   case 1:  return 'a';
                   case 2:  return 'b';
                   default: return 'z';
               }
           }()

      Parameters:
        `ctx` - the parse tree
      Returns:
        MethodCallExpression instance

    - #### @Override
      public Tuple3<Token, List<Expression>, Integer> visitSwitchExpressionLabel(SwitchExpressionLabelContext ctx)

    - #### @Override
      public Tuple2<Token, Expression> visitSwitchLabel(SwitchLabelContext ctx)

    - #### @Override
      public SwitchStatement visitSwitchStatement(SwitchStatementContext ctx)

    - #### @Override
      public SynchronizedStatement visitSynchronizedStmtAlt(SynchronizedStmtAltContext ctx)

    - #### @Override
      public Parameter visitThisFormalParameter(ThisFormalParameterContext ctx)

    - #### @Override
      public VariableExpression visitThisPrmrAlt(ThisPrmrAltContext ctx)

    - #### @Override
      public void visitThrowStatement(ThrowStatement statement)

    - #### @Override
      public ThrowStatement visitThrowStmtAlt(ThrowStmtAltContext ctx)

    - #### @Override
      public Statement visitTryCatchStatement(TryCatchStatementContext ctx)

    - #### @Override
      public ClassNode visitType(TypeContext ctx)

    - #### @Override
      public GenericsType visitTypeArgument(TypeArgumentContext ctx)

    - #### @Override
      public GenericsType[] visitTypeArguments(TypeArgumentsContext ctx)

    - #### @Override
      public GenericsType[] visitTypeArgumentsOrDiamond(TypeArgumentsOrDiamondContext ctx)

    - #### @Override
      public ClassNode[] visitTypeBound(TypeBoundContext ctx)

    - #### @Override
      public ClassNode visitTypeDeclaration(TypeDeclarationContext ctx)

    - #### @Override
      public ClassNode[] visitTypeList(TypeListContext ctx)

    - #### @Override
      public VariableExpression visitTypeNamePair(TypeNamePairContext ctx)

    - #### @Override
      public List<Expression> visitTypeNamePairs(TypeNamePairsContext ctx)

    - #### @Override
      public GenericsType visitTypeParameter(TypeParameterContext ctx)

    - #### @Override
      public GenericsType[] visitTypeParameters(TypeParametersContext ctx)

    - #### @Override
      public Expression visitUnaryAddExprAlt(UnaryAddExprAltContext ctx)

    - #### @Override
      public Expression visitUnaryNotExprAlt(UnaryNotExprAltContext ctx)

    - #### @Override
      public AstBuilder.DeclarationListStatement visitVariableDeclaration(VariableDeclarationContext ctx)

    - #### @Override
      public DeclarationExpression visitVariableDeclarator(VariableDeclaratorContext ctx)

    - #### @Override
      public VariableExpression visitVariableDeclaratorId(VariableDeclaratorIdContext ctx)

    - #### @Override
      public List<DeclarationExpression> visitVariableDeclarators(VariableDeclaratorsContext ctx)

    - #### @Override
      public Expression visitVariableInitializer(VariableInitializerContext ctx)

    - #### @Override
      public List<Expression> visitVariableInitializers(VariableInitializersContext ctx)

    - #### @Override
      public ModifierNode visitVariableModifier(VariableModifierContext ctx)

    - #### @Override
      public List<ModifierNode> visitVariableModifiers(VariableModifiersContext ctx)

    - #### @Override
      public List<ModifierNode> visitVariableModifiersOpt(VariableModifiersOptContext ctx)

    - #### @Override
      public TupleExpression visitVariableNames(VariableNamesContext ctx)

    - #### @Override
      public WhileStatement visitWhileStmtAlt(WhileStmtAltContext ctx)

    - #### @Override
      public ReturnStatement visitYieldStatement(YieldStatementContext ctx)

    - #### @Override
      public ReturnStatement visitYieldStmtAlt(YieldStmtAltContext ctx)