Class AnnotationClosureVisitor
java.lang.Object
org.codehaus.groovy.ast.CodeVisitorSupport
org.codehaus.groovy.ast.ClassCodeVisitorSupport
org.apache.groovy.contracts.ast.visitor.BaseVisitor
org.apache.groovy.contracts.ast.visitor.AnnotationClosureVisitor
- All Implemented Interfaces:
ASTNodeMetaData,org.codehaus.groovy.ast.GroovyClassVisitor,org.codehaus.groovy.ast.GroovyCodeVisitor,org.codehaus.groovy.transform.ErrorCollecting
Visits interfaces & classes and looks for @Requires or @Ensures and creates
Closure
classes for the annotation closures.
The annotation closure classes are used later on to check interface contract pre- and post-conditions in implementation classes.
- See Also:
-
Field Summary
FieldsFields inherited from class org.apache.groovy.contracts.ast.visitor.BaseVisitor
CLOSURE_ATTRIBUTE_NAME, GCONTRACTS_ENABLED_VAR, source, sourceUnitFields inherited from interface org.apache.groovy.contracts.ast.visitor.ASTNodeMetaData
CLOSURE_REPLACED, PROCESSED -
Constructor Summary
ConstructorsConstructorDescriptionAnnotationClosureVisitor(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.control.io.ReaderSource source) -
Method Summary
Modifier and TypeMethodDescriptionvoidvisitClass(org.codehaus.groovy.ast.ClassNode node) voidvisitConstructorOrMethod(org.codehaus.groovy.ast.MethodNode methodNode, boolean isConstructor) Methods inherited from class org.apache.groovy.contracts.ast.visitor.BaseVisitor
getSourceUnitMethods inherited from class org.codehaus.groovy.ast.ClassCodeVisitorSupport
addError, visitAnnotation, visitAnnotations, visitAnnotations, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitClassCodeContainer, visitConstructor, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitImports, visitMethod, visitObjectInitializerStatements, visitPackage, visitProperty, visitReturnStatement, visitStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoopMethods inherited from class org.codehaus.groovy.ast.CodeVisitorSupport
afterSwitchConditionExpressionVisited, visitArgumentlistExpression, visitArrayExpression, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBooleanExpression, visitBytecodeExpression, visitCastExpression, visitClassExpression, visitClosureExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitEmptyStatement, visitFieldExpression, visitGStringExpression, visitLambdaExpression, visitListExpression, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitMethodReferenceExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitTernaryExpression, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpressionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.codehaus.groovy.ast.GroovyCodeVisitor
visit, visit, visitEmptyExpression, visitListOfExpressions
-
Field Details
-
META_DATA_USE_EXECUTION_TRACKER
- See Also:
-
META_DATA_ORIGINAL_TRY_CATCH_BLOCK
- See Also:
-
-
Constructor Details
-
AnnotationClosureVisitor
public AnnotationClosureVisitor(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.control.io.ReaderSource source)
-
-
Method Details
-
visitClass
public void visitClass(org.codehaus.groovy.ast.ClassNode node) - Specified by:
visitClassin interfaceorg.codehaus.groovy.ast.GroovyClassVisitor- Overrides:
visitClassin classorg.codehaus.groovy.ast.ClassCodeVisitorSupport
-
visitConstructorOrMethod
public void visitConstructorOrMethod(org.codehaus.groovy.ast.MethodNode methodNode, boolean isConstructor) - Overrides:
visitConstructorOrMethodin classorg.codehaus.groovy.ast.ClassCodeVisitorSupport
-