|
TechTrader Bytecode Toolkit | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.techtrader.modules.tools.bytecode.BCEntity | +--com.techtrader.modules.tools.bytecode.Attribute | +--com.techtrader.modules.tools.bytecode.InnerClassesAttribute
Attribute describing the inner classes of a .class file. Note: for methods that take in the name of the inner class, this refers to the short name it is referred to be within the owning class, not the full name. For anonymous inner classes, use the empty String. TODO: Import and copy methods are broken.
Fields inherited from class com.techtrader.modules.tools.bytecode.Attribute |
_nameIndex,
_owner |
Constructor Summary | |
InnerClassesAttribute(int nameIndex,
BCEntity owner)
Protected constructor. |
Method Summary | |
void |
acceptVisit(BCVisitor visit)
Accept a visit from a BCVisitor, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this object. |
InnerClass |
addInnerClass()
Add an inner class. |
InnerClass |
addInnerClass(String name)
Add an inner class with the given name. |
void |
clearInnerClasses()
Clear all inner classes from this entity. |
protected void |
copy(Attribute other)
Copy the information from the given attribute to this one. |
InnerClass |
getInnerClass(String name)
Return the inner class with the given name. |
InnerClass[] |
getInnerClasses()
Get all the inner classes owned by this entity. |
InnerClass[] |
getInnerClasses(String name)
Returns all inner classes with the given name. |
int |
getLength()
Return the length of the .class representation of this attribute, in bytes. |
InnerClass |
importInnerClass(InnerClass inner)
Import an inner class from another entity, or make a copy of one on this entity. |
void |
importInnerClasses(InnerClassesAttribute other)
Import all inner classes from another entity. |
protected void |
readData(DataInput in,
int length)
Should be overridden by subclasses to read their internal data from the given stream, up to length bytes, excluding the name index. |
boolean |
removeInnerClass(InnerClass innerClass)
Remove the given inner class. |
boolean |
removeInnerClass(String name)
Remove all inner classes with the given name from the list. |
protected void |
writeData(DataOutput out,
int length)
Should be overridden by subclasses to write their internal data to the given stream, up to length bytes, excluding the name index. |
Methods inherited from class com.techtrader.modules.tools.bytecode.Attribute |
createAttribute,
getName,
getNameIndex,
getOwner,
getPool,
invalidate |
Methods inherited from class com.techtrader.modules.tools.bytecode.BCEntity |
addAttribute,
clearAttributes,
getAttribute,
getAttributes,
getAttributes,
importAttribute,
importAttributes,
readAttributes,
removeAttribute,
removeAttribute,
visitAttributes,
writeAttributes |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Constructor Detail |
public InnerClassesAttribute(int nameIndex, BCEntity owner)
Method Detail |
public InnerClass[] getInnerClasses()
public InnerClass getInnerClass(String name)
public InnerClass[] getInnerClasses(String name)
public InnerClass importInnerClass(InnerClass inner)
public void importInnerClasses(InnerClassesAttribute other)
public InnerClass addInnerClass()
public InnerClass addInnerClass(String name)
public void clearInnerClasses()
public boolean removeInnerClass(String name)
public boolean removeInnerClass(InnerClass innerClass)
public int getLength()
protected void copy(Attribute other)
protected void readData(DataInput in, int length) throws IOException
protected void writeData(DataOutput out, int length) throws IOException
public void acceptVisit(BCVisitor visit)
|
TechTrader Bytecode Toolkit | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |