Package com.ibm.wala.shrikeBT
Class ConstantPoolReader
- java.lang.Object
-
- com.ibm.wala.shrikeBT.ConstantPoolReader
-
public abstract class ConstantPoolReader extends Object
This class provides read-only access to a constant pool. It gets subclassed for each class reader/editor toolkit you want to work with.
-
-
Constructor Summary
Constructors Constructor Description ConstantPoolReader()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract String
getConstantPoolClassType(int index)
Retrieve the value of a CONSTANT_Class constant pool item in JVM internal class format (e.g., java/lang/Object).abstract double
getConstantPoolDouble(int index)
Retrieve the value of a CONSTANT_Double constant pool item.abstract BootstrapMethodsReader.BootstrapMethod
getConstantPoolDynamicBootstrap(int index)
abstract String
getConstantPoolDynamicName(int index)
abstract String
getConstantPoolDynamicType(int index)
abstract float
getConstantPoolFloat(int index)
Retrieve the value of a CONSTANT_Float constant pool item.abstract String
getConstantPoolHandleClassType(int index)
Retrieve the class part of the CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item pointed to by a CONSTANT_MethodHandle entry.abstract byte
getConstantPoolHandleKind(int index)
abstract String
getConstantPoolHandleName(int index)
Retrieve the name part of the CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item pointed to by a CONSTANT_MethodHandle entry.abstract String
getConstantPoolHandleType(int index)
Retrieve the type part of the CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item pointed to by a CONSTANT_MethodHandle entry.abstract int
getConstantPoolInteger(int index)
Retrieve the value of a CONSTANT_Integer constant pool item.abstract int
getConstantPoolItemType(int index)
Retrieve the JVM constant pool item type (a Constants.CONSTANT_xxx value).abstract long
getConstantPoolLong(int index)
Retrieve the value of a CONSTANT_Long constant pool item.abstract String
getConstantPoolMemberClassType(int index)
Retrieve the class part of a CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item, in JVM internal class format (e.g., java/lang/Object).abstract String
getConstantPoolMemberName(int index)
Retrieve the name part of a CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item, This method should be overriden by a toolkit-specific subclass.abstract String
getConstantPoolMemberType(int index)
Retrieve the type part of a CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item, in JVM internal type format (e.g., Ljava/lang/Object;).abstract String
getConstantPoolMethodType(int index)
Retrieve the value of a CONSTANT_MethodType constant pool item.abstract String
getConstantPoolString(int index)
Retrieve the value of a CONSTANT_String constant pool item.
-
-
-
Method Detail
-
getConstantPoolItemType
public abstract int getConstantPoolItemType(int index)
Retrieve the JVM constant pool item type (a Constants.CONSTANT_xxx value). This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolInteger
public abstract int getConstantPoolInteger(int index)
Retrieve the value of a CONSTANT_Integer constant pool item. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolFloat
public abstract float getConstantPoolFloat(int index)
Retrieve the value of a CONSTANT_Float constant pool item. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolLong
public abstract long getConstantPoolLong(int index)
Retrieve the value of a CONSTANT_Long constant pool item. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolDouble
public abstract double getConstantPoolDouble(int index)
Retrieve the value of a CONSTANT_Double constant pool item. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolString
public abstract String getConstantPoolString(int index)
Retrieve the value of a CONSTANT_String constant pool item. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolMethodType
public abstract String getConstantPoolMethodType(int index)
Retrieve the value of a CONSTANT_MethodType constant pool item. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolClassType
public abstract String getConstantPoolClassType(int index)
Retrieve the value of a CONSTANT_Class constant pool item in JVM internal class format (e.g., java/lang/Object). This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolMemberClassType
public abstract String getConstantPoolMemberClassType(int index)
Retrieve the class part of a CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item, in JVM internal class format (e.g., java/lang/Object). This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolMemberName
public abstract String getConstantPoolMemberName(int index)
Retrieve the name part of a CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item, This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolMemberType
public abstract String getConstantPoolMemberType(int index)
Retrieve the type part of a CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item, in JVM internal type format (e.g., Ljava/lang/Object;). This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolHandleClassType
public abstract String getConstantPoolHandleClassType(int index)
Retrieve the class part of the CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item pointed to by a CONSTANT_MethodHandle entry. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolHandleName
public abstract String getConstantPoolHandleName(int index)
Retrieve the name part of the CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item pointed to by a CONSTANT_MethodHandle entry. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolHandleType
public abstract String getConstantPoolHandleType(int index)
Retrieve the type part of the CONSTANT_FieldRef, CONSTANT_MethodRef, or CONSTANT_InterfaceMethodRef constant pool item pointed to by a CONSTANT_MethodHandle entry. This method should be overriden by a toolkit-specific subclass.- Parameters:
index
- the constant pool item to examine
-
getConstantPoolHandleKind
public abstract byte getConstantPoolHandleKind(int index)
-
getConstantPoolDynamicBootstrap
public abstract BootstrapMethodsReader.BootstrapMethod getConstantPoolDynamicBootstrap(int index)
-
getConstantPoolDynamicName
public abstract String getConstantPoolDynamicName(int index)
-
getConstantPoolDynamicType
public abstract String getConstantPoolDynamicType(int index)
-
-