public class InnerClassesAttribute extends AttributeInfo
InnerClasses_attribute
.Modifier and Type | Field | Description |
---|---|---|
static String |
tag |
The name of this attribute
"InnerClasses" . |
constPool
Constructor | Description |
---|---|
InnerClassesAttribute(ConstPool cp) |
Constructs an empty InnerClasses attribute.
|
Modifier and Type | Method | Description |
---|---|---|
int |
accessFlags(int nth) |
Returns
classes[nth].inner_class_access_flags . |
void |
append(int inner,
int outer,
int name,
int flags) |
Appends a new entry.
|
void |
append(String inner,
String outer,
String name,
int flags) |
Appends a new entry.
|
AttributeInfo |
copy(ConstPool newCp,
Map<String,String> classnames) |
Makes a copy.
|
int |
find(String name) |
Finds the entry for the given inner class.
|
String |
innerClass(int nth) |
Returns the class name indicated
by
classes[nth].inner_class_info_index . |
int |
innerClassIndex(int nth) |
Returns
classes[nth].inner_class_info_index . |
String |
innerName(int nth) |
Returns the simple class name indicated
by
classes[nth].inner_name_index . |
int |
innerNameIndex(int nth) |
Returns
classes[nth].inner_name_index . |
String |
outerClass(int nth) |
Returns the class name indicated
by
classes[nth].outer_class_info_index . |
int |
outerClassIndex(int nth) |
Returns
classes[nth].outer_class_info_index . |
int |
remove(int nth) |
Removes the
nth entry. |
void |
setAccessFlags(int nth,
int flags) |
Sets
classes[nth].inner_class_access_flags to
the given index. |
void |
setInnerClassIndex(int nth,
int index) |
Sets
classes[nth].inner_class_info_index to
the given index. |
void |
setInnerNameIndex(int nth,
int index) |
Sets
classes[nth].inner_name_index to
the given index. |
void |
setOuterClassIndex(int nth,
int index) |
Sets
classes[nth].outer_class_info_index to
the given index. |
int |
tableLength() |
Returns
number_of_classes . |
get, getConstPool, getName, length, set
public static final String tag
"InnerClasses"
.public InnerClassesAttribute(ConstPool cp)
append(String, String, String, int)
public int tableLength()
number_of_classes
.public int innerClassIndex(int nth)
classes[nth].inner_class_info_index
.public String innerClass(int nth)
classes[nth].inner_class_info_index
.
The class name is fully-qualified and separated by dot.ConstPool.getClassInfo(int)
public void setInnerClassIndex(int nth, int index)
classes[nth].inner_class_info_index
to
the given index.public int outerClassIndex(int nth)
classes[nth].outer_class_info_index
.public String outerClass(int nth)
classes[nth].outer_class_info_index
.public void setOuterClassIndex(int nth, int index)
classes[nth].outer_class_info_index
to
the given index.public int innerNameIndex(int nth)
classes[nth].inner_name_index
.public String innerName(int nth)
classes[nth].inner_name_index
.public void setInnerNameIndex(int nth, int index)
classes[nth].inner_name_index
to
the given index.public int accessFlags(int nth)
classes[nth].inner_class_access_flags
.public void setAccessFlags(int nth, int flags)
classes[nth].inner_class_access_flags
to
the given index.public int find(String name)
name
- the fully-qualified class name separated by dot and $.public void append(String inner, String outer, String name, int flags)
inner
- inner_class_info_index
outer
- outer_class_info_index
name
- inner_name_index
flags
- inner_class_access_flags
public void append(int inner, int outer, int name, int flags)
inner
- inner_class_info_index
outer
- outer_class_info_index
name
- inner_name_index
flags
- inner_class_access_flags
public int remove(int nth)
nth
entry. It does not eliminate
constant pool items that the removed entry refers to.
ClassFile.compact()
should be executed to remove
these unnecessary items.nth
- 0, 1, 2, ...ClassFile.compact()
public AttributeInfo copy(ConstPool newCp, Map<String,String> classnames)
Map
object.copy
in class AttributeInfo
newCp
- the constant pool table used by the new copy.classnames
- pairs of replaced and substituted
class names.Copyright © 2018 Shigeru Chiba, www.javassist.org. All rights reserved.