public abstract class AnnotationVisitor extends Object
visit
| visitEnum
| visitAnnotation
| visitArray
)*
visitEnd
.Modifier and Type | Field and Description |
---|---|
protected int |
api
The ASM API version implemented by this visitor.
|
protected AnnotationVisitor |
av
The annotation visitor to which this visitor must delegate method calls.
|
Modifier | Constructor and Description |
---|---|
protected |
AnnotationVisitor(int api)
Constructs a new
AnnotationVisitor . |
protected |
AnnotationVisitor(int api,
AnnotationVisitor annotationVisitor)
Constructs a new
AnnotationVisitor . |
Modifier and Type | Method and Description |
---|---|
void |
visit(String name,
Object value)
Visits a primitive value of the annotation.
|
AnnotationVisitor |
visitAnnotation(String name,
String descriptor)
Visits a nested annotation value of the annotation.
|
AnnotationVisitor |
visitArray(String name)
Visits an array value of the annotation.
|
void |
visitEnd()
Visits the end of the annotation.
|
void |
visitEnum(String name,
String descriptor,
String value)
Visits an enumeration value of the annotation.
|
protected final int api
ASM
x values in Opcodes
.protected AnnotationVisitor av
protected AnnotationVisitor(int api)
AnnotationVisitor
.api
- the ASM API version implemented by this visitor. Must be one of the ASM
x values in Opcodes
.protected AnnotationVisitor(int api, AnnotationVisitor annotationVisitor)
AnnotationVisitor
.api
- the ASM API version implemented by this visitor. Must be one of the ASM
x values in Opcodes
.annotationVisitor
- the annotation visitor to which this visitor must delegate method
calls. May be null.public void visit(String name, Object value)
name
- the value name.value
- the actual value, whose type must be Byte
, Boolean
, Character
, Short
, Integer
, Long
, Float
, Double
,
String
or Type
of Type.OBJECT
or Type.ARRAY
sort. This
value can also be an array of byte, boolean, short, char, int, long, float or double values
(this is equivalent to using visitArray(java.lang.String)
and visiting each array element in turn,
but is more convenient).public void visitEnum(String name, String descriptor, String value)
name
- the value name.descriptor
- the class descriptor of the enumeration class.value
- the actual enumeration value.public AnnotationVisitor visitAnnotation(String name, String descriptor)
name
- the value name.descriptor
- the class descriptor of the nested annotation class.public AnnotationVisitor visitArray(String name)
visit
. This is what ClassReader
does for non empty arrays of primitive values.name
- the value name.public void visitEnd()