Groovy Documentation

## org.codehaus.groovy.classgen
[Java] Class AnnotationVisitor

    java.lang.Object
      org.codehaus.groovy.classgen.AnnotationVisitor

    public class AnnotationVisitor
    extends java.lang.Object

An Annotation visitor responsible with: - reading annotation metadata (@Retention, @Target, attribute types) - verify that an `AnnotationNode` conforms to annotation meta - enhancing an `AnnotationNode` AST to reflect real annotation meta

Authors:
  Alex Popescu

Constructor Summary
`AnnotationVisitor(SourceUnit source, ErrorCollector errorCollector)`

Method Summary
`protected void` | `addError(java.lang.String msg)`
`protected void` | `addError(java.lang.String msg, ASTNode expr)`
`void` | `checkCircularReference(ClassNode searchClass, ClassNode attrType, Expression startExp)`
`void` | `checkReturnType(ClassNode attrType, ASTNode node)`
`void` | `setReportClass(ClassNode cn)`
`AnnotationNode` | `visit(AnnotationNode node)`
`protected void` | `visitAnnotationExpression(java.lang.String attrName, AnnotationConstantExpression expression, ClassNode attrType)` @param attrName the name
`protected void` | `visitConstantExpression(java.lang.String attrName, ConstantExpression constExpr, ClassNode attrType)`
`protected void` | `visitEnumExpression(java.lang.String attrName, PropertyExpression propExpr, ClassNode attrType)`
`protected void` | `visitExpression(java.lang.String attrName, Expression attrExp, ClassNode attrType)`
`protected void` | `visitListExpression(java.lang.String attrName, ListExpression listExpr, ClassNode elementType)`

Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Constructor Detail

### AnnotationVisitor

    public AnnotationVisitor(SourceUnit source, ErrorCollector errorCollector)

Method Detail

### addError

    protected void addError(java.lang.String msg)

### addError

    protected void addError(java.lang.String msg, ASTNode expr)

### checkCircularReference

    public void checkCircularReference(ClassNode searchClass, ClassNode attrType, Expression startExp)

### checkReturnType

    public void checkReturnType(ClassNode attrType, ASTNode node)

### setReportClass

    public void setReportClass(ClassNode cn)

### visit

    public AnnotationNode visit(AnnotationNode node)

### visitAnnotationExpression

    protected void visitAnnotationExpression(java.lang.String attrName, AnnotationConstantExpression expression, ClassNode attrType)

  Parameters:
    `attrName` - the name
    `expression` - the expression
    `attrType` - the type

### visitConstantExpression

    protected void visitConstantExpression(java.lang.String attrName, ConstantExpression constExpr, ClassNode attrType)

### visitEnumExpression

    protected void visitEnumExpression(java.lang.String attrName, PropertyExpression propExpr, ClassNode attrType)

### visitExpression

    protected void visitExpression(java.lang.String attrName, Expression attrExp, ClassNode attrType)

### visitListExpression

    protected void visitListExpression(java.lang.String attrName, ListExpression listExpr, ClassNode elementType)

Groovy Documentation