[Java] Class AstBuilder
- org.apache.groovy.parser.antlr4.AstBuilder
public class AstBuilder extends GroovyParserBaseVisitor
Builds the AST from the parse tree generated by Antlr4.
Constructor Summary
Constructor and description |
---|
AstBuilder
(SourceUnit sourceUnit, boolean groovydocEnabled, boolean runtimeGroovydocEnabled) |
Methods Summary
Inherited Methods Summary
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 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 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 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 List<Statement> visitSwitchBlockStatementGroup(SwitchBlockStatementGroupContext 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 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)
© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/3.0.7/html/gapi/org/apache/groovy/parser/antlr4/AstBuilder.html