org.objectweb.asm
Class Attribute
A non standard class, field, method or code attribute.
- Eric Bruneton
- Eugene Kuleshov
String | type- The type of this attribute.
|
Attribute(String type)- Constructs a new empty attribute.
|
protected Label[] | getLabels()- Returns the labels corresponding to this attribute.
|
boolean | isCodeAttribute()- Returns true if this type of attribute is a code attribute.
|
boolean | isUnknown()- Returns true if this type of attribute is unknown.
|
protected Attribute | read(ClassReader cr, int off, int len, char[] buf, int codeOff, Label[] labels)- Reads a
type attribute.
|
protected ByteVector | write(ClassWriter cw, byte[] code, int len, int maxStack, int maxLocals)- Returns the byte array form of this attribute.
|
type
public final String type
The type of this attribute.
Attribute
protected Attribute(String type)
Constructs a new empty attribute.
type - the type of the attribute.
getLabels
protected Label[] getLabels()
Returns the labels corresponding to this attribute.
- the labels corresponding to this attribute, or null if
this attribute is not a code attribute that contains labels.
isCodeAttribute
public boolean isCodeAttribute()
Returns true if this type of attribute is a code attribute.
- true if this type of attribute is a code attribute.
isUnknown
public boolean isUnknown()
Returns true if this type of attribute is unknown. The default
implementation of this method always returns true.
- true if this type of attribute is unknown.
read
protected Attribute read(ClassReader cr,
int off,
int len,
char[] buf,
int codeOff,
Label[] labels) Reads a
type attribute. This method must return a
new
Attribute object, of type
type, corresponding to
the
len bytes starting at the given offset, in the given class
reader.
cr - the class that contains the attribute to be read.off - index of the first byte of the attribute's content in cr.b. The 6 attribute header bytes, containing the
type and the length of the attribute, are not taken into account
here.len - the length of the attribute's content.buf - buffer to be used to call
readUTF8,
readClass or
readConst.codeOff - index of the first byte of code's attribute content in
cr.b, or -1 if the attribute to be read is
not a code attribute. The 6 attribute header bytes, containing the
type and the length of the attribute, are not taken into account
here.labels - the labels of the method's code, or null if the
attribute to be read is not a code attribute.
- a new
Attribute object corresponding to the given
bytes.
write
protected ByteVector write(ClassWriter cw,
byte[] code,
int len,
int maxStack,
int maxLocals) Returns the byte array form of this attribute.
cw - the class to which this attribute must be added. This parameter
can be used to add to the constant pool of this class the items
that corresponds to this attribute.code - the bytecode of the method corresponding to this code
attribute, or null if this attribute is not a code
attributes.len - the length of the bytecode of the method corresponding to this
code attribute, or null if this attribute is not a code
attribute.maxStack - the maximum stack size of the method corresponding to
this code attribute, or -1 if this attribute is not a code
attribute.maxLocals - the maximum number of local variables of the method
corresponding to this code attribute, or -1 if this attribute is
not a code attribute.
- the byte array form of this attribute.