Package org.codehaus.groovy.transform
Class ASTTransformationCollectorCodeVisitor
java.lang.Object
org.codehaus.groovy.ast.CodeVisitorSupport
org.codehaus.groovy.ast.ClassCodeVisitorSupport
org.codehaus.groovy.transform.ASTTransformationCollectorCodeVisitor
- All Implemented Interfaces:
GroovyClassVisitor
,GroovyCodeVisitor
This visitor walks the AST tree and collects references to Annotations that
are annotated themselves by
GroovyASTTransformation
. Each such
annotation is added.
This visitor is only intended to be executed once, during the SEMANTIC_ANALYSIS phase of compilation.
- Author:
- Danno Ferrin (shemnon), Roshan Dawrani (roshandawrani), Jochen Theodorou (blackdrag)
-
Constructor Summary
ConstructorDescriptionASTTransformationCollectorCodeVisitor
(SourceUnit source, GroovyClassLoader transformLoader) -
Method Summary
Modifier and TypeMethodDescriptionprotected SourceUnit
void
If the annotation is annotated withGroovyASTTransformation
the annotation is added tostageVisitors
at the appropriate processor visitor.void
visitClass
(ClassNode klassNode) Visit a ClassNode.Methods inherited from class org.codehaus.groovy.ast.ClassCodeVisitorSupport
addError, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitClassCodeContainer, visitConstructor, visitConstructorOrMethod, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitImports, visitMethod, visitObjectInitializerStatements, visitPackage, visitProperty, visitReturnStatement, visitStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop
Methods inherited from class org.codehaus.groovy.ast.CodeVisitorSupport
visitArgumentlistExpression, visitArrayExpression, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBooleanExpression, visitBytecodeExpression, visitCastExpression, visitClassExpression, visitClosureExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitEmptyStatement, visitFieldExpression, visitGStringExpression, visitListExpression, visitListOfExpressions, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitTernaryExpression, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpression
-
Constructor Details
-
ASTTransformationCollectorCodeVisitor
-
-
Method Details
-
getSourceUnit
- Specified by:
getSourceUnit
in classClassCodeVisitorSupport
-
visitClass
Description copied from interface:GroovyClassVisitor
Visit a ClassNode.- Specified by:
visitClass
in interfaceGroovyClassVisitor
- Overrides:
visitClass
in classClassCodeVisitorSupport
-
visitAnnotations
If the annotation is annotated withGroovyASTTransformation
the annotation is added tostageVisitors
at the appropriate processor visitor.- Overrides:
visitAnnotations
in classClassCodeVisitorSupport
- Parameters:
node
- the node to process
-