Package org.apache.bcel.classfile
Class StackMapType
- java.lang.Object
-
- org.apache.bcel.classfile.StackMapType
-
- All Implemented Interfaces:
java.lang.Cloneable,Node
public final class StackMapType extends java.lang.Object implements Node, java.lang.Cloneable
This class represents the type of a local variable or item on stack used in the StackMap entries.- See Also:
StackMapEntry,StackMap,Const
-
-
Field Summary
Fields Modifier and Type Field Description static StackMapType[]EMPTY_ARRAY
-
Constructor Summary
Constructors Constructor Description StackMapType(byte type, int index, ConstantPool constantPool)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(Visitor v)Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.StackMapTypecopy()voiddump(java.io.DataOutputStream file)Dump type entries to file.java.lang.StringgetClassName()Gets the class name of this StackMapType from the constant pool at index position.ConstantPoolgetConstantPool()intgetIndex()bytegetType()booleanhasIndex()voidsetConstantPool(ConstantPool constantPool)voidsetIndex(int index)voidsetType(byte type)java.lang.StringtoString()
-
-
-
Field Detail
-
EMPTY_ARRAY
public static final StackMapType[] EMPTY_ARRAY
-
-
Constructor Detail
-
StackMapType
public StackMapType(byte type, int index, ConstantPool constantPool)
- Parameters:
type- type tag as defined in the Constants interfaceindex- index to constant pool, or byte code offset
-
-
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 StackMapType copy()
- Returns:
- deep copy of this object
-
dump
public void dump(java.io.DataOutputStream file) throws java.io.IOException
Dump type entries to file.- Parameters:
file- Output file stream- Throws:
java.io.IOException- if an I/O error occurs.
-
getClassName
public java.lang.String getClassName()
Gets the class name of this StackMapType from the constant pool at index position.- Returns:
- the fully qualified name of the class for this StackMapType.
- Since:
- 6.8.0
-
getConstantPool
public ConstantPool getConstantPool()
- Returns:
- Constant pool used by this object.
-
getIndex
public int getIndex()
- Returns:
- index to constant pool if type == ITEM_Object, or offset in byte code, if type == ITEM_NewObject, and -1 otherwise
-
getType
public byte getType()
-
hasIndex
public boolean hasIndex()
- Returns:
- true, if type is either ITEM_Object or ITEM_NewObject
-
setConstantPool
public void setConstantPool(ConstantPool constantPool)
- Parameters:
constantPool- Constant pool to be used for this object.
-
setIndex
public void setIndex(int index)
-
setType
public void setType(byte type)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object- Returns:
- String representation
-
-