groovy / 4.0 / org / apache / groovy / contracts / ast / visitor / annotationclosurevisitor.html

[Java] Class AnnotationClosureVisitor

  • org.apache.groovy.contracts.ast.visitor.AnnotationClosureVisitor
All Implemented Interfaces and Traits:
ASTNodeMetaData
public class AnnotationClosureVisitor
extends BaseVisitor
implements ASTNodeMetaData

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:
Requires
Ensures
BaseVisitor

Field Summary

Fields
Modifiers Name Description
static String META_DATA_ORIGINAL_TRY_CATCH_BLOCK
static String META_DATA_USE_EXECUTION_TRACKER
Inherited fields
Fields inherited from class Fields
class BaseVisitor CLOSURE_ATTRIBUTE_NAME, GCONTRACTS_ENABLED_VAR, source, sourceUnit

Constructor Summary

Constructors
Constructor and description
AnnotationClosureVisitor(SourceUnit sourceUnit, ReaderSource source)

Methods Summary

Methods
Type Params Return Type Name and description
public void visitClass(ClassNode node)
public void visitConstructorOrMethod(MethodNode methodNode, boolean isConstructor)

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class BaseVisitor getSourceUnit
class ClassCodeVisitorSupport addError, getSourceUnit, visitAnnotation, visitAnnotations, visitAnnotations, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitClass, visitClassCodeContainer, visitConstructor, visitConstructorOrMethod, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitImports, visitMethod, visitObjectInitializerStatements, visitPackage, visitProperty, visitReturnStatement, visitStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop
class CodeVisitorSupport afterSwitchConditionExpressionVisited, visitArgumentlistExpression, visitArrayExpression, visitAssertStatement, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBlockStatement, visitBooleanExpression, visitBreakStatement, visitBytecodeExpression, visitCaseStatement, visitCastExpression, visitCatchStatement, visitClassExpression, visitClosureExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitEmptyStatement, visitExpressionStatement, visitFieldExpression, visitForLoop, visitGStringExpression, visitIfElse, visitLambdaExpression, visitListExpression, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitMethodReferenceExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitReturnStatement, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitSwitch, visitSynchronizedStatement, visitTernaryExpression, visitThrowStatement, visitTryCatchFinally, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpression, visitWhileLoop

Field Detail

public static final String META_DATA_ORIGINAL_TRY_CATCH_BLOCK

public static final String META_DATA_USE_EXECUTION_TRACKER

Constructor Detail

public AnnotationClosureVisitor(SourceUnit sourceUnit, ReaderSource source)

Method Detail

@Override public void visitClass(ClassNode node)

@Override public void visitConstructorOrMethod(MethodNode methodNode, boolean isConstructor)

© 2003-2022 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/4.0.0/html/gapi/org/apache/groovy/contracts/ast/visitor/AnnotationClosureVisitor.html