[Java] Class AnnotationVisitor

  • org.codehaus.groovy.classgen.AnnotationVisitor

An Annotation visitor responsible for:

  • reading annotation metadata (@Retention, @Target, attribute types)
  • verify that an AnnotationNode conforms to annotation meta
  • enhancing an AnnotationNode AST to reflect real annotation meta

Constructor Summary

Constructors
Constructor and description
AnnotationVisitor (SourceUnit source, ErrorCollector errorCollector)

Methods Summary

Methods
Type Params Return Type Name and description
protected void addError(String msg)
protected void addError(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(String attrName, AnnotationConstantExpression expression, ClassNode attrType)
@param attrName the name
protected void visitConstantExpression(String attrName, ConstantExpression constExpr, ClassNode attrType)
protected void visitEnumExpression(String attrName, PropertyExpression propExpr, ClassNode attrType)
protected void visitExpression(String attrName, Expression attrExp, ClassNode attrType)
protected void visitListExpression(String attrName, ListExpression listExpr, ClassNode elementType)

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class Object wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll

Constructor Detail

public AnnotationVisitor(SourceUnit source, ErrorCollector errorCollector)

Method Detail

protected void addError(String msg)

protected void addError(String msg, ASTNode expr)

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

public void checkReturnType(ClassNode attrType, ASTNode node)

public void setReportClass(ClassNode cn)

public AnnotationNode visit(AnnotationNode node)

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

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

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

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

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

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

© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.4.21/html/gapi/org/codehaus/groovy/classgen/AnnotationVisitor.html