Package com.googlecode.aviator.asm
Class FieldWriter
- java.lang.Object
-
- com.googlecode.aviator.asm.FieldVisitor
-
- com.googlecode.aviator.asm.FieldWriter
-
final class FieldWriter extends FieldVisitor
AnFieldVisitorthat generates Java fields in bytecode form.
-
-
Field Summary
Fields Modifier and Type Field Description private intaccessAccess flags of this field.private AnnotationWriterannsThe runtime visible annotations of this field.private AttributeattrsThe non standard attributes of this field.private ClassWritercwThe class writer to which this field must be added.private intdescThe index of the constant pool item that contains the descriptor of this field.private AnnotationWriteriannsThe runtime invisible annotations of this field.private intnameThe index of the constant pool item that contains the name of this method.private intsignatureThe index of the constant pool item that contains the signature of this field.private intvalueThe index of the constant pool item that contains the constant value of this field.-
Fields inherited from class com.googlecode.aviator.asm.FieldVisitor
api, fv
-
-
Constructor Summary
Constructors Constructor Description FieldWriter(ClassWriter cw, int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.Object value)Constructs a newFieldWriter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) intgetSize()Returns the size of this field.(package private) voidput(ByteVector out)Puts the content of this field into the given byte vector.AnnotationVisitorvisitAnnotation(java.lang.String desc, boolean visible)Visits an annotation of the field.voidvisitAttribute(Attribute attr)Visits a non standard attribute of the field.voidvisitEnd()Visits the end of the field.
-
-
-
Field Detail
-
cw
private final ClassWriter cw
The class writer to which this field must be added.
-
access
private final int access
Access flags of this field.
-
name
private final int name
The index of the constant pool item that contains the name of this method.
-
desc
private final int desc
The index of the constant pool item that contains the descriptor of this field.
-
signature
private int signature
The index of the constant pool item that contains the signature of this field.
-
value
private int value
The index of the constant pool item that contains the constant value of this field.
-
anns
private AnnotationWriter anns
The runtime visible annotations of this field. May be null.
-
ianns
private AnnotationWriter ianns
The runtime invisible annotations of this field. May be null.
-
attrs
private Attribute attrs
The non standard attributes of this field. May be null.
-
-
Constructor Detail
-
FieldWriter
FieldWriter(ClassWriter cw, int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.Object value)
Constructs a newFieldWriter.
-
-
Method Detail
-
visitAnnotation
public AnnotationVisitor visitAnnotation(java.lang.String desc, boolean visible)
Description copied from class:FieldVisitorVisits an annotation of the field.- Overrides:
visitAnnotationin classFieldVisitor- Parameters:
desc- the class descriptor of the annotation class.visible- true if the annotation is visible at runtime.- Returns:
- a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.
-
visitAttribute
public void visitAttribute(Attribute attr)
Description copied from class:FieldVisitorVisits a non standard attribute of the field.- Overrides:
visitAttributein classFieldVisitor- Parameters:
attr- an attribute.
-
visitEnd
public void visitEnd()
Description copied from class:FieldVisitorVisits the end of the field. This method, which is the last one to be called, is used to inform the visitor that all the annotations and attributes of the field have been visited.- Overrides:
visitEndin classFieldVisitor
-
getSize
int getSize()
Returns the size of this field.- Returns:
- the size of this field.
-
put
void put(ByteVector out)
Puts the content of this field into the given byte vector.- Parameters:
out- where the content of this field must be put.
-
-