public class ConstantPool extends Metadata implements ClassConstants
Modifier and Type | Class and Description |
---|---|
class |
ConstantPool.CPSlot |
JVM_ACC_ABSTRACT, JVM_ACC_ANNOTATION, JVM_ACC_BRIDGE, JVM_ACC_ENUM, JVM_ACC_FIELD_ACCESS_WATCHED, JVM_ACC_FIELD_FLAGS, JVM_ACC_FIELD_HAS_GENERIC_SIGNATURE, JVM_ACC_FIELD_MODIFICATION_WATCHED, JVM_ACC_FINAL, JVM_ACC_HAS_CHECKED_EXCEPTIONS, JVM_ACC_HAS_FINALIZER, JVM_ACC_HAS_JSRS, JVM_ACC_HAS_LINE_NUMBER_TABLE, JVM_ACC_HAS_LOCAL_VARIABLE_TABLE, JVM_ACC_HAS_LOOPS, JVM_ACC_HAS_MIRANDA_METHODS, JVM_ACC_HAS_MONITOR_BYTECODES, JVM_ACC_HAS_VANILLA_CONSTRUCTOR, JVM_ACC_INTERFACE, JVM_ACC_IS_CLONEABLE, JVM_ACC_IS_OBSOLETE, JVM_ACC_LOOPS_FLAG_INIT, JVM_ACC_MONITOR_MATCH, JVM_ACC_NATIVE, JVM_ACC_NOT_OSR_COMPILABLE, JVM_ACC_PRIVATE, JVM_ACC_PROMOTED_FLAGS, JVM_ACC_PROTECTED, JVM_ACC_PUBLIC, JVM_ACC_QUEUED, JVM_ACC_STATIC, JVM_ACC_STRICT, JVM_ACC_SUPER, JVM_ACC_SYNCHRONIZED, JVM_ACC_SYNTHETIC, JVM_ACC_TRANSIENT, JVM_ACC_VARARGS, JVM_ACC_VOLATILE, JVM_ACC_WRITTEN_FLAGS, JVM_CONSTANT_Class, JVM_CONSTANT_ClassIndex, JVM_CONSTANT_Double, JVM_CONSTANT_Fieldref, JVM_CONSTANT_Float, JVM_CONSTANT_Integer, JVM_CONSTANT_InterfaceMethodref, JVM_CONSTANT_Invalid, JVM_CONSTANT_InvokeDynamic, JVM_CONSTANT_Long, JVM_CONSTANT_MethodHandle, JVM_CONSTANT_MethodHandleInError, JVM_CONSTANT_Methodref, JVM_CONSTANT_MethodType, JVM_CONSTANT_MethodTypeInError, JVM_CONSTANT_NameAndType, JVM_CONSTANT_String, JVM_CONSTANT_StringIndex, JVM_CONSTANT_Unicode, JVM_CONSTANT_UnresolvedClass, JVM_CONSTANT_UnresolvedClassInError, JVM_CONSTANT_Utf8, JVM_RECOGNIZED_CLASS_MODIFIERS, JVM_RECOGNIZED_FIELD_MODIFIERS, JVM_RECOGNIZED_METHOD_MODIFIERS, JVM_REF_getField, JVM_REF_getStatic, JVM_REF_invokeInterface, JVM_REF_invokeSpecial, JVM_REF_invokeStatic, JVM_REF_invokeVirtual, JVM_REF_newInvokeSpecial, JVM_REF_putField, JVM_REF_putStatic, MAJOR_VERSION, MAJOR_VERSION_OLD, MINOR_VERSION, MINOR_VERSION_OLD
Constructor and Description |
---|
ConstantPool(Address addr) |
Modifier and Type | Method and Description |
---|---|
protected void |
debugMessage(java.lang.String message) |
static int |
decodeInvokedynamicIndex(int i) |
Address |
getAddressAtRaw(long index) |
short[] |
getBootstrapSpecifierAt(int i)
Lookup for multi-operand (InvokeDynamic) entries.
|
ConstantPoolCache |
getCache() |
double |
getDoubleAt(long index) |
int |
getFieldOrMethodAt(int which) |
InstanceKlass |
getFieldOrMethodKlassRefAt(int which) |
Field |
getFieldRefAt(int which) |
float |
getFloatAt(long index) |
int |
getIntAt(long index) |
Klass |
getKlassAt(int which) |
Symbol |
getKlassNameAt(int which) |
int |
getLength() |
long |
getLongAt(long index) |
int |
getMethodHandleIndexAt(int i)
Lookup for MethodHandle entries.
|
int |
getMethodHandleRefKindAt(int i)
Lookup for MethodHandle entries.
|
Method |
getMethodRefAt(int which) |
int |
getMethodTypeIndexAt(int i)
Lookup for MethodType entries.
|
int[] |
getNameAndTypeAt(int which) |
int |
getNameAndTypeRefIndexAt(int index) |
Symbol |
getNameRefAt(int which) |
int |
getNameRefIndexAt(int index)
Lookup for entries consisting of (name_index, signature_index)
|
U2Array |
getOperands() |
InstanceKlass |
getPoolHolder() |
Oop |
getResolvedReferences() |
Symbol |
getSignatureRefAt(int which) |
int |
getSignatureRefIndexAt(int index)
Lookup for entries consisting of (name_index, signature_index)
|
long |
getSize() |
ConstantPool.CPSlot |
getSlotAt(long index) |
Symbol |
getSymbolAt(long index) |
ConstantTag |
getTagAt(long index) |
U1Array |
getTags() |
Symbol |
getUnresolvedStringAt(int which) |
int |
invokedynamicCPCacheIndex(int index) |
boolean |
isConstantPool() |
static boolean |
isInvokedynamicIndex(int i) |
void |
iterateFields(MetadataVisitor visitor) |
int |
objectToCPIndex(int index) |
void |
printValueOn(java.io.PrintStream tty) |
U2Array |
referenceMap() |
Symbol |
uncachedGetNameRefAt(int which) |
Symbol |
uncachedGetSignatureRefAt(int which) |
void |
writeBytes(java.io.OutputStream os) |
dumpReplayData, instantiateWrapperFor, iterate
equals, getAddress, hashCode, toString
public ConstantPool(Address addr)
protected void debugMessage(java.lang.String message)
public boolean isConstantPool()
public U1Array getTags()
public U2Array getOperands()
public ConstantPoolCache getCache()
public InstanceKlass getPoolHolder()
public int getLength()
public Oop getResolvedReferences()
public U2Array referenceMap()
public int objectToCPIndex(int index)
public ConstantTag getTagAt(long index)
public ConstantPool.CPSlot getSlotAt(long index)
public Address getAddressAtRaw(long index)
public Symbol getSymbolAt(long index)
public int getIntAt(long index)
public float getFloatAt(long index)
public long getLongAt(long index)
public double getDoubleAt(long index)
public int getFieldOrMethodAt(int which)
public int[] getNameAndTypeAt(int which)
public Symbol getNameRefAt(int which)
public Symbol uncachedGetNameRefAt(int which)
public Symbol getSignatureRefAt(int which)
public Symbol uncachedGetSignatureRefAt(int which)
public static boolean isInvokedynamicIndex(int i)
public static int decodeInvokedynamicIndex(int i)
public int invokedynamicCPCacheIndex(int index)
public Klass getKlassAt(int which)
public Symbol getKlassNameAt(int which)
public Symbol getUnresolvedStringAt(int which)
public InstanceKlass getFieldOrMethodKlassRefAt(int which)
public Method getMethodRefAt(int which)
public Field getFieldRefAt(int which)
public int getNameAndTypeRefIndexAt(int index)
public int getNameRefIndexAt(int index)
public int getSignatureRefIndexAt(int index)
public int getMethodHandleIndexAt(int i)
public int getMethodHandleRefKindAt(int i)
public int getMethodTypeIndexAt(int i)
public short[] getBootstrapSpecifierAt(int i)
public void iterateFields(MetadataVisitor visitor)
public void writeBytes(java.io.OutputStream os) throws java.io.IOException
java.io.IOException
public void printValueOn(java.io.PrintStream tty)
printValueOn
in class Metadata
public long getSize()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.