Package org.apache.groovy.contracts.ast
Class GContractsASTTransformation
java.lang.Object
org.apache.groovy.contracts.ast.BaseASTTransformation
org.apache.groovy.contracts.ast.GContractsASTTransformation
- All Implemented Interfaces:
ASTTransformation
Custom AST transformation that removes closure annotations of Invariant
,
Requires
and Ensures
and adds Java
assertions executing the closure-code.
Whenever an assertion is broken an AssertionViolation
descendant class will be thrown.
-
Constructor Summary
-
Method Summary
Methods inherited from class org.apache.groovy.contracts.ast.BaseASTTransformation
getReaderSource
-
Constructor Details
-
GContractsASTTransformation
public GContractsASTTransformation()
-
-
Method Details
-
visit
- Parameters:
nodes
- The ASTnodes when the call was triggered. Element 0 is the AnnotationNode that triggered this annotation to be activated. Element 1 is the AnnotatedNode decorated, such as a MethodNode or ClassNode. For global transformations it is usually safe to ignore this parameter.unit
- The source unit being compiled. The source unit may contain several classes. For global transformations, information about the AST can be retrieved from this object.
-