Package aQute.bnd.classfile
Class ConstantPool
- java.lang.Object
-
- aQute.bnd.classfile.ConstantPool
-
- Direct Known Subclasses:
MutableConstantPool
public class ConstantPool extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classConstantPool.AbstractDynamicInfostatic classConstantPool.AbstractRefInfostatic classConstantPool.ClassInfostatic classConstantPool.DynamicInfostatic classConstantPool.FieldrefInfostatic interfaceConstantPool.Infostatic classConstantPool.InterfaceMethodrefInfostatic classConstantPool.InvokeDynamicInfostatic classConstantPool.MethodHandleInfostatic classConstantPool.MethodrefInfostatic classConstantPool.MethodTypeInfostatic classConstantPool.ModuleInfostatic classConstantPool.NameAndTypeInfostatic classConstantPool.PackageInfostatic interfaceConstantPool.RefInfoFunctionstatic classConstantPool.StringInfo
-
Field Summary
Fields Modifier and Type Field Description static intCONSTANT_Classstatic intCONSTANT_Doublestatic intCONSTANT_Dynamicstatic intCONSTANT_Fieldrefstatic intCONSTANT_Floatstatic intCONSTANT_Integerstatic intCONSTANT_InterfaceMethodrefstatic intCONSTANT_InvokeDynamicstatic intCONSTANT_Longstatic intCONSTANT_MethodHandlestatic intCONSTANT_Methodrefstatic intCONSTANT_MethodTypestatic intCONSTANT_Modulestatic intCONSTANT_NameAndTypestatic intCONSTANT_Packagestatic intCONSTANT_Stringstatic intCONSTANT_Utf8
-
Constructor Summary
Constructors Constructor Description ConstantPool(java.lang.Object[] pool)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected <I> intadd(java.lang.Class<I> infoType, java.util.function.Supplier<I> supplier)intclassInfo(java.lang.String class_name)java.lang.StringclassName(int class_info_index)intdoubleInfo(double constant)intdoubleInfo(java.lang.Double constant)intdynamicInfo(int bootstrap_method_attr_index, java.lang.String name, java.lang.String descriptor)<T> Tentry(int index)intfieldrefInfo(java.lang.String class_name, java.lang.String name, java.lang.String descriptor)intfloatInfo(float constant)intfloatInfo(java.lang.Float constant)protected <I> intindex(java.lang.Class<I> infoType, java.util.function.Predicate<I> match, java.util.function.Supplier<I> supplier)intintegerInfo(int constant)intintegerInfo(java.lang.Boolean constant)intintegerInfo(java.lang.Byte constant)intintegerInfo(java.lang.Character constant)intintegerInfo(java.lang.Integer constant)intintegerInfo(java.lang.Short constant)intinterfaceMethodrefInfo(java.lang.String class_name, java.lang.String name, java.lang.String descriptor)intinvokeDynamicInfo(int bootstrap_method_attr_index, java.lang.String name, java.lang.String descriptor)intlongInfo(long constant)intlongInfo(java.lang.Long constant)intmethodHandleInfo(int reference_kind, java.lang.String class_name, java.lang.String name, java.lang.String descriptor, ConstantPool.RefInfoFunction refInfoFunction)intmethodrefInfo(java.lang.String class_name, java.lang.String name, java.lang.String descriptor)intmethodTypeInfo(java.lang.String descriptor)intmoduleInfo(java.lang.String module_name)java.lang.StringmoduleName(int module_info_index)intnameAndTypeInfo(java.lang.String name, java.lang.String descriptor)intpackageInfo(java.lang.String package_name)java.lang.StringpackageName(int package_info_index)static ConstantPoolread(java.io.DataInput in)intsize()java.lang.Stringstring(int string_info_index)intstringInfo(java.lang.String string)inttag(int index)java.lang.StringtoString()java.lang.Stringutf8(int utf8_index)intutf8Info(java.lang.String utf8)voidwrite(java.io.DataOutput out)
-
-
-
Field Detail
-
CONSTANT_Utf8
public static final int CONSTANT_Utf8
- See Also:
- Constant Field Values
-
CONSTANT_Integer
public static final int CONSTANT_Integer
- See Also:
- Constant Field Values
-
CONSTANT_Float
public static final int CONSTANT_Float
- See Also:
- Constant Field Values
-
CONSTANT_Long
public static final int CONSTANT_Long
- See Also:
- Constant Field Values
-
CONSTANT_Double
public static final int CONSTANT_Double
- See Also:
- Constant Field Values
-
CONSTANT_Class
public static final int CONSTANT_Class
- See Also:
- Constant Field Values
-
CONSTANT_String
public static final int CONSTANT_String
- See Also:
- Constant Field Values
-
CONSTANT_Fieldref
public static final int CONSTANT_Fieldref
- See Also:
- Constant Field Values
-
CONSTANT_Methodref
public static final int CONSTANT_Methodref
- See Also:
- Constant Field Values
-
CONSTANT_InterfaceMethodref
public static final int CONSTANT_InterfaceMethodref
- See Also:
- Constant Field Values
-
CONSTANT_NameAndType
public static final int CONSTANT_NameAndType
- See Also:
- Constant Field Values
-
CONSTANT_MethodHandle
public static final int CONSTANT_MethodHandle
- See Also:
- Constant Field Values
-
CONSTANT_MethodType
public static final int CONSTANT_MethodType
- See Also:
- Constant Field Values
-
CONSTANT_Dynamic
public static final int CONSTANT_Dynamic
- See Also:
- Constant Field Values
-
CONSTANT_InvokeDynamic
public static final int CONSTANT_InvokeDynamic
- See Also:
- Constant Field Values
-
CONSTANT_Module
public static final int CONSTANT_Module
- See Also:
- Constant Field Values
-
CONSTANT_Package
public static final int CONSTANT_Package
- See Also:
- Constant Field Values
-
-
Method Detail
-
size
public int size()
-
entry
public <T> T entry(int index)
-
tag
public int tag(int index)
-
utf8
public java.lang.String utf8(int utf8_index)
-
className
public java.lang.String className(int class_info_index)
-
moduleName
public java.lang.String moduleName(int module_info_index)
-
packageName
public java.lang.String packageName(int package_info_index)
-
string
public java.lang.String string(int string_info_index)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
read
public static ConstantPool read(java.io.DataInput in) throws java.io.IOException
- Throws:
java.io.IOException
-
index
protected <I> int index(java.lang.Class<I> infoType, java.util.function.Predicate<I> match, java.util.function.Supplier<I> supplier)
-
add
protected <I> int add(java.lang.Class<I> infoType, java.util.function.Supplier<I> supplier)
-
integerInfo
public int integerInfo(int constant)
-
integerInfo
public int integerInfo(java.lang.Integer constant)
-
integerInfo
public int integerInfo(java.lang.Byte constant)
-
integerInfo
public int integerInfo(java.lang.Character constant)
-
integerInfo
public int integerInfo(java.lang.Short constant)
-
integerInfo
public int integerInfo(java.lang.Boolean constant)
-
longInfo
public int longInfo(java.lang.Long constant)
-
longInfo
public int longInfo(long constant)
-
floatInfo
public int floatInfo(java.lang.Float constant)
-
floatInfo
public int floatInfo(float constant)
-
doubleInfo
public int doubleInfo(java.lang.Double constant)
-
doubleInfo
public int doubleInfo(double constant)
-
utf8Info
public int utf8Info(java.lang.String utf8)
-
stringInfo
public int stringInfo(java.lang.String string)
-
moduleInfo
public int moduleInfo(java.lang.String module_name)
-
packageInfo
public int packageInfo(java.lang.String package_name)
-
classInfo
public int classInfo(java.lang.String class_name)
-
fieldrefInfo
public int fieldrefInfo(java.lang.String class_name, java.lang.String name, java.lang.String descriptor)
-
methodrefInfo
public int methodrefInfo(java.lang.String class_name, java.lang.String name, java.lang.String descriptor)
-
interfaceMethodrefInfo
public int interfaceMethodrefInfo(java.lang.String class_name, java.lang.String name, java.lang.String descriptor)
-
nameAndTypeInfo
public int nameAndTypeInfo(java.lang.String name, java.lang.String descriptor)
-
methodHandleInfo
public int methodHandleInfo(int reference_kind, java.lang.String class_name, java.lang.String name, java.lang.String descriptor, ConstantPool.RefInfoFunction refInfoFunction)
-
methodTypeInfo
public int methodTypeInfo(java.lang.String descriptor)
-
dynamicInfo
public int dynamicInfo(int bootstrap_method_attr_index, java.lang.String name, java.lang.String descriptor)
-
invokeDynamicInfo
public int invokeDynamicInfo(int bootstrap_method_attr_index, java.lang.String name, java.lang.String descriptor)
-
write
public void write(java.io.DataOutput out) throws java.io.IOException- Throws:
java.io.IOException
-
-