Package org.codehaus.groovy.ast

# Interface GroovyCodeVisitor

All Known Implementing Classes:
  `AbstractInterruptibleASTTransformation`, `AnnotationClosureVisitor`, `AnnotationConstantsVisitor`, `AnnotationContractParameterVisitor`, `AnnotationProcessorVisitor`, `AsmClassGenerator`, `AssertStatementCreationUtility.AddAssertionCallStatementToReturnStatementVisitor`, `AssertStatementCreationUtility.AddResultReturnStatementVisitor`, `AssertStatementCreationUtility.ReturnStatementVisitor`, `ASTTransformationCollectorCodeVisitor`, `ASTTransformationVisitor`, `BaseVisitor`, `ClassCodeExpressionTransformer`, `ClassCodeVisitorSupport`, `ClassCompletionVerifier`, `ClassGenerator`, `ClosureWriter.CorrectAccessedVariableVisitor`, `CodeVisitorSupport`, `CollectRecursiveCalls`, `ContextualClassCodeVisitor`, `ContractElementVisitor`, `DependencyTracker`, `DomainModelInjectionVisitor`, `DummyClassGenerator`, `DynamicSetterInjectionVisitor`, `EnumCompletionVisitor`, `EnumVisitor`, `ExtendedVerifier`, `FieldASTTransformation`, `FinalVariableAnalyzer`, `GenericsVisitor`, `GinqAstBaseVisitor`, `GinqAstBuilder`, `GrabAnnotationTransformation`, `GroovyCodeVisitorAdapter`, `GroovydocVisitor`, `HasRecursiveCalls`, `InnerClassCompletionVisitor`, `InnerClassVisitor`, `InnerClassVisitorHelper`, `InstanceOfVerifier`, `JavaAwareResolveVisitor`, `LabelVerifier`, `LifecycleAfterTransformationVisitor`, `LifecycleBeforeTransformationVisitor`, `MethodInvocationTrap`, `NewifyASTTransformation`, `OperatorRenameASTTransformation`, `OptimizerVisitor`, `PlaceholderVisitor`, `ResolveVisitor`, `ReturnAdderForClosures`, `SecureASTCustomizer.SecuringCodeVisitor`, `SharedVariableCollector`, `SqlOrderByVisitor`, `SqlWhereVisitor`, `StatementReplacer`, `StaticCompilationTransformer`, `StaticCompilationVisitor`, `StaticImportVisitor`, `StaticTypeCheckingVisitor`, `StaticTypeCheckingVisitor.VariableExpressionTypeMemoizer`, `StaticVerifier`, `TransformingCodeVisitor`, `VariableExpressionReplacer`, `VariableScopeVisitor`, `VerifierCodeVisitor`

public interface GroovyCodeVisitor
An implementation of the visitor pattern for working with ASTNodes.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `default void`
  `visit(Expression expression)`
  `default void`
  `visit(Statement statement)`
  `void`
  `visitArgumentlistExpression(ArgumentListExpression expression)`
  `void`
  `visitArrayExpression(ArrayExpression expression)`
  `void`
  `visitAssertStatement(AssertStatement statement)`
  `void`
  `visitAttributeExpression(AttributeExpression expression)`
  `void`
  `visitBinaryExpression(BinaryExpression expression)`
  `void`
  `visitBitwiseNegationExpression(BitwiseNegationExpression expression)`
  `void`
  `visitBlockStatement(BlockStatement statement)`
  `void`
  `visitBooleanExpression(BooleanExpression expression)`
  `void`
  `visitBreakStatement(BreakStatement statement)`
  `void`
  `visitBytecodeExpression(BytecodeExpression expression)`
  `void`
  `visitCaseStatement(CaseStatement statement)`
  `void`
  `visitCastExpression(CastExpression expression)`
  `void`
  `visitCatchStatement(CatchStatement statement)`
  `void`
  `visitClassExpression(ClassExpression expression)`
  `void`
  `visitClosureExpression(ClosureExpression expression)`
  `void`
  `visitClosureListExpression(ClosureListExpression expression)`
  `void`
  `visitConstantExpression(ConstantExpression expression)`
  `void`
  `visitConstructorCallExpression(ConstructorCallExpression expression)`
  `void`
  `visitContinueStatement(ContinueStatement statement)`
  `void`
  `visitDeclarationExpression(DeclarationExpression expression)`
  `void`
  `visitDoWhileLoop(DoWhileStatement statement)`
  `default void`
  `visitEmptyExpression(EmptyExpression expression)`
  `default void`
  `visitEmptyStatement(EmptyStatement statement)`
  `void`
  `visitExpressionStatement(ExpressionStatement statement)`
  `void`
  `visitFieldExpression(FieldExpression expression)`
  `void`
  `visitForLoop(ForStatement statement)`
  `void`
  `visitGStringExpression(GStringExpression expression)`
  `void`
  `visitIfElse(IfStatement statement)`
  `void`
  `visitLambdaExpression(LambdaExpression expression)`
  `void`
  `visitListExpression(ListExpression expression)`
  `default void`
  `visitListOfExpressions(List<? extends Expression> list)`
  `void`
  `visitMapEntryExpression(MapEntryExpression expression)`
  `void`
  `visitMapExpression(MapExpression expression)`
  `void`
  `visitMethodCallExpression(MethodCallExpression expression)`
  `void`
  `visitMethodPointerExpression(MethodPointerExpression expression)`
  `void`
  `visitMethodReferenceExpression(MethodReferenceExpression expression)`
  `void`
  `visitNotExpression(NotExpression expression)`
  `void`
  `visitPostfixExpression(PostfixExpression expression)`
  `void`
  `visitPrefixExpression(PrefixExpression expression)`
  `void`
  `visitPropertyExpression(PropertyExpression expression)`
  `void`
  `visitRangeExpression(RangeExpression expression)`
  `void`
  `visitReturnStatement(ReturnStatement statement)`
  `void`
  `visitShortTernaryExpression(ElvisOperatorExpression expression)`
  `void`
  `visitSpreadExpression(SpreadExpression expression)`
  `void`
  `visitSpreadMapExpression(SpreadMapExpression expression)`
  `void`
  `visitStaticMethodCallExpression(StaticMethodCallExpression expression)`
  `void`
  `visitSwitch(SwitchStatement statement)`
  `void`
  `visitSynchronizedStatement(SynchronizedStatement statement)`
  `void`
  `visitTernaryExpression(TernaryExpression expression)`
  `void`
  `visitThrowStatement(ThrowStatement statement)`
  `void`
  `visitTryCatchFinally(TryCatchStatement statement)`
  `void`
  `visitTupleExpression(TupleExpression expression)`
  `void`
  `visitUnaryMinusExpression(UnaryMinusExpression expression)`
  `void`
  `visitUnaryPlusExpression(UnaryPlusExpression expression)`
  `void`
  `visitVariableExpression(VariableExpression expression)`
  `void`
  `visitWhileLoop(WhileStatement statement)`

- ## Method Details

  - ### visitBlockStatement

    void visitBlockStatement(BlockStatement statement)

  - ### visitForLoop

    void visitForLoop(ForStatement statement)

  - ### visitWhileLoop

    void visitWhileLoop(WhileStatement statement)

  - ### visitDoWhileLoop

    void visitDoWhileLoop(DoWhileStatement statement)

  - ### visitIfElse

    void visitIfElse(IfStatement statement)

  - ### visitExpressionStatement

    void visitExpressionStatement(ExpressionStatement statement)

  - ### visitReturnStatement

    void visitReturnStatement(ReturnStatement statement)

  - ### visitAssertStatement

    void visitAssertStatement(AssertStatement statement)

  - ### visitTryCatchFinally

    void visitTryCatchFinally(TryCatchStatement statement)

  - ### visitSwitch

    void visitSwitch(SwitchStatement statement)

  - ### visitCaseStatement

    void visitCaseStatement(CaseStatement statement)

  - ### visitBreakStatement

    void visitBreakStatement(BreakStatement statement)

  - ### visitContinueStatement

    void visitContinueStatement(ContinueStatement statement)

  - ### visitThrowStatement

    void visitThrowStatement(ThrowStatement statement)

  - ### visitSynchronizedStatement

    void visitSynchronizedStatement(SynchronizedStatement statement)

  - ### visitCatchStatement

    void visitCatchStatement(CatchStatement statement)

  - ### visitEmptyStatement

    default void visitEmptyStatement(EmptyStatement statement)

  - ### visit

    default void visit(Statement statement)

  - ### visitMethodCallExpression

    void visitMethodCallExpression(MethodCallExpression expression)

  - ### visitStaticMethodCallExpression

    void visitStaticMethodCallExpression(StaticMethodCallExpression expression)

  - ### visitConstructorCallExpression

    void visitConstructorCallExpression(ConstructorCallExpression expression)

  - ### visitTernaryExpression

    void visitTernaryExpression(TernaryExpression expression)

  - ### visitShortTernaryExpression

    void visitShortTernaryExpression(ElvisOperatorExpression expression)

  - ### visitBinaryExpression

    void visitBinaryExpression(BinaryExpression expression)

  - ### visitPrefixExpression

    void visitPrefixExpression(PrefixExpression expression)

  - ### visitPostfixExpression

    void visitPostfixExpression(PostfixExpression expression)

  - ### visitBooleanExpression

    void visitBooleanExpression(BooleanExpression expression)

  - ### visitClosureExpression

    void visitClosureExpression(ClosureExpression expression)

  - ### visitLambdaExpression

    void visitLambdaExpression(LambdaExpression expression)

  - ### visitTupleExpression

    void visitTupleExpression(TupleExpression expression)

  - ### visitMapExpression

    void visitMapExpression(MapExpression expression)

  - ### visitMapEntryExpression

    void visitMapEntryExpression(MapEntryExpression expression)

  - ### visitListExpression

    void visitListExpression(ListExpression expression)

  - ### visitRangeExpression

    void visitRangeExpression(RangeExpression expression)

  - ### visitPropertyExpression

    void visitPropertyExpression(PropertyExpression expression)

  - ### visitAttributeExpression

    void visitAttributeExpression(AttributeExpression expression)

  - ### visitFieldExpression

    void visitFieldExpression(FieldExpression expression)

  - ### visitMethodPointerExpression

    void visitMethodPointerExpression(MethodPointerExpression expression)

  - ### visitMethodReferenceExpression

    void visitMethodReferenceExpression(MethodReferenceExpression expression)

  - ### visitConstantExpression

    void visitConstantExpression(ConstantExpression expression)

  - ### visitClassExpression

    void visitClassExpression(ClassExpression expression)

  - ### visitVariableExpression

    void visitVariableExpression(VariableExpression expression)

  - ### visitDeclarationExpression

    void visitDeclarationExpression(DeclarationExpression expression)

  - ### visitGStringExpression

    void visitGStringExpression(GStringExpression expression)

  - ### visitArrayExpression

    void visitArrayExpression(ArrayExpression expression)

  - ### visitSpreadExpression

    void visitSpreadExpression(SpreadExpression expression)

  - ### visitSpreadMapExpression

    void visitSpreadMapExpression(SpreadMapExpression expression)

  - ### visitNotExpression

    void visitNotExpression(NotExpression expression)

  - ### visitUnaryMinusExpression

    void visitUnaryMinusExpression(UnaryMinusExpression expression)

  - ### visitUnaryPlusExpression

    void visitUnaryPlusExpression(UnaryPlusExpression expression)

  - ### visitBitwiseNegationExpression

    void visitBitwiseNegationExpression(BitwiseNegationExpression expression)

  - ### visitCastExpression

    void visitCastExpression(CastExpression expression)

  - ### visitArgumentlistExpression

    void visitArgumentlistExpression(ArgumentListExpression expression)

  - ### visitClosureListExpression

    void visitClosureListExpression(ClosureListExpression expression)

  - ### visitBytecodeExpression

    void visitBytecodeExpression(BytecodeExpression expression)

  - ### visitEmptyExpression

    default void visitEmptyExpression(EmptyExpression expression)

  - ### visitListOfExpressions

    default void visitListOfExpressions(List<? extends Expression> list)

  - ### visit

    default void visit(Expression expression)