java.io.Serializable, java.lang.Cloneable, NodeAnnotationDefault, Annotations, Code, ConstantValue, Deprecated, EnclosingMethod, ExceptionTable, InnerClasses, LineNumberTable, LocalVariableTable, LocalVariableTypeTable, ParameterAnnotations, PMGClass, Signature, SourceFile, StackMap, Synthetic, Unknownpublic abstract class Attribute extends java.lang.Object implements java.lang.Cloneable, Node, java.io.Serializable
ConstantValue,
SourceFile,
Code,
Unknown,
ExceptionTable,
LineNumberTable,
LocalVariableTable,
InnerClasses,
Synthetic,
Deprecated,
Signature,
Serialized Form| Modifier and Type | Field | Description |
|---|---|---|
protected ConstantPool |
constant_pool |
|
protected int |
length |
|
protected int |
name_index |
|
protected byte |
tag |
| Modifier | Constructor | Description |
|---|---|---|
protected |
Attribute(byte tag,
int name_index,
int length,
ConstantPool constant_pool) |
| Modifier and Type | Method | Description |
|---|---|---|
abstract void |
accept(Visitor v) |
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
|
static void |
addAttributeReader(java.lang.String name,
AttributeReader r) |
Add an Attribute reader capable of parsing (user-defined) attributes
named "name".
|
java.lang.Object |
clone() |
Use copy() if you want to have a deep copy(), i.e., with all references
copied correctly.
|
abstract Attribute |
copy(ConstantPool _constant_pool) |
|
void |
dump(java.io.DataOutputStream file) |
Dump attribute to file stream in binary format.
|
ConstantPool |
getConstantPool() |
|
int |
getLength() |
|
java.lang.String |
getName() |
|
int |
getNameIndex() |
|
byte |
getTag() |
|
static Attribute |
readAttribute(java.io.DataInputStream file,
ConstantPool constant_pool) |
|
static void |
removeAttributeReader(java.lang.String name) |
Remove attribute reader
|
void |
setConstantPool(ConstantPool constant_pool) |
|
void |
setLength(int length) |
|
void |
setNameIndex(int name_index) |
|
java.lang.String |
toString() |
protected int name_index
protected int length
protected byte tag
protected ConstantPool constant_pool
protected Attribute(byte tag,
int name_index,
int length,
ConstantPool constant_pool)
public abstract void accept(Visitor v)
public void dump(java.io.DataOutputStream file)
throws java.io.IOException
file - Output file streamjava.io.IOExceptionpublic static void addAttributeReader(java.lang.String name,
AttributeReader r)
name - the name of the attribute as stored in the class filer - the reader objectpublic static void removeAttributeReader(java.lang.String name)
name - the name of the attribute as stored in the class filepublic static final Attribute readAttribute(java.io.DataInputStream file, ConstantPool constant_pool) throws java.io.IOException, ClassFormatException
java.io.IOExceptionClassFormatExceptionpublic java.lang.String getName()
public final int getLength()
public final void setLength(int length)
length - length in bytes.public final void setNameIndex(int name_index)
name_index - of attribute.public final int getNameIndex()
public final byte getTag()
public final ConstantPool getConstantPool()
ConstantPoolpublic final void setConstantPool(ConstantPool constant_pool)
constant_pool - Constant pool to be used for this object.ConstantPoolpublic java.lang.Object clone()
clone in class java.lang.Objectpublic abstract Attribute copy(ConstantPool _constant_pool)
public java.lang.String toString()
toString in class java.lang.Object