Package org.apache.bcel.classfile
Class NestMembers
- java.lang.Object
-
- org.apache.bcel.classfile.Attribute
-
- org.apache.bcel.classfile.NestMembers
-
- All Implemented Interfaces:
java.lang.Cloneable
,Node
public final class NestMembers extends Attribute
This class is derived from Attribute and records the classes and interfaces that are authorized to claim membership in the nest hosted by the current class or interface. There may be at most one NestMembers attribute in a ClassFile structure.- See Also:
Attribute
-
-
Field Summary
Fields Modifier and Type Field Description private int[]
classes
-
Fields inherited from class org.apache.bcel.classfile.Attribute
constant_pool, EMPTY_ARRAY, length, name_index, tag
-
-
Constructor Summary
Constructors Constructor Description NestMembers(int nameIndex, int length, int[] classes, ConstantPool constantPool)
NestMembers(int nameIndex, int length, java.io.DataInput input, ConstantPool constantPool)
Construct object from input stream.NestMembers(NestMembers c)
Initialize from another object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.Attribute
copy(ConstantPool constantPool)
void
dump(java.io.DataOutputStream file)
Dump NestMembers attribute to file stream in binary format.int[]
getClasses()
java.lang.String[]
getClassNames()
int
getNumberClasses()
void
setClasses(int[] classes)
java.lang.String
toString()
-
Methods inherited from class org.apache.bcel.classfile.Attribute
addAttributeReader, addAttributeReader, clone, getConstantPool, getLength, getName, getNameIndex, getTag, println, readAttribute, readAttribute, removeAttributeReader, setConstantPool, setLength, setNameIndex
-
-
-
-
Constructor Detail
-
NestMembers
NestMembers(int nameIndex, int length, java.io.DataInput input, ConstantPool constantPool) throws java.io.IOException
Construct object from input stream.- Parameters:
nameIndex
- Index in constant poollength
- Content length in bytesinput
- Input streamconstantPool
- Array of constants- Throws:
java.io.IOException
- if an I/O error occurs.
-
NestMembers
public NestMembers(int nameIndex, int length, int[] classes, ConstantPool constantPool)
- Parameters:
nameIndex
- Index in constant poollength
- Content length in bytesclasses
- Table of indices in constant poolconstantPool
- Array of constants
-
NestMembers
public NestMembers(NestMembers c)
Initialize from another object. Note that both objects use the same references (shallow copy). Use copy() for a physical copy.- Parameters:
c
- Source to copy.
-
-
Method Detail
-
accept
public void accept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class. I.e., the hierarchy of methods, fields, attributes, etc. spawns a tree of objects.
-
copy
public Attribute copy(ConstantPool constantPool)
-
dump
public void dump(java.io.DataOutputStream file) throws java.io.IOException
Dump NestMembers attribute to file stream in binary format.
-
getClasses
public int[] getClasses()
- Returns:
- array of indices into constant pool of class names.
-
getClassNames
public java.lang.String[] getClassNames()
- Returns:
- string array of class names
-
getNumberClasses
public int getNumberClasses()
- Returns:
- Length of classes table.
-
setClasses
public void setClasses(int[] classes)
- Parameters:
classes
- the list of class indexes Also redefines number_of_classes according to table length.
-
-