mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 14:54:52 +02:00
8339260: Move rarely used constants out of ClassFile
Reviewed-by: asotona
This commit is contained in:
parent
47c10694c6
commit
8c8f0d85ce
37 changed files with 1545 additions and 1916 deletions
|
@ -38,6 +38,57 @@ public sealed interface PoolEntry
|
|||
LoadableConstantEntry, MemberRefEntry, ModuleEntry, NameAndTypeEntry,
|
||||
PackageEntry {
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link ClassEntry CONSTANT_Class} constant kind. */
|
||||
int TAG_CLASS = 7;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link DoubleEntry CONSTANT_Double} constant kind. */
|
||||
int TAG_DOUBLE = 6;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link ConstantDynamicEntry CONSTANT_Dynamic} constant kind. */
|
||||
int TAG_DYNAMIC = 17;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link FieldRefEntry CONSTANT_Fieldref} constant kind. */
|
||||
int TAG_FIELDREF = 9;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link FloatEntry CONSTANT_Float} constant kind. */
|
||||
int TAG_FLOAT = 4;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link IntegerEntry CONSTANT_Integer} constant kind. */
|
||||
int TAG_INTEGER = 3;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link InterfaceMethodRefEntry CONSTANT_InterfaceMethodref} constant kind. */
|
||||
int TAG_INTERFACE_METHODREF = 11;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link InvokeDynamicEntry CONSTANT_InvokeDynamic} constant kind. */
|
||||
int TAG_INVOKE_DYNAMIC = 18;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link LongEntry CONSTANT_Long} constant kind. */
|
||||
int TAG_LONG = 5;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link MethodHandleEntry CONSTANT_MethodHandle} constant kind. */
|
||||
int TAG_METHOD_HANDLE = 15;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link MethodRefEntry CONSTANT_Methodref} constant kind. */
|
||||
int TAG_METHODREF = 10;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link MethodTypeEntry CONSTANT_MethodType} constant kind. */
|
||||
int TAG_METHOD_TYPE = 16;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link ModuleEntry CONSTANT_Module} constant kind. */
|
||||
int TAG_MODULE = 19;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link NameAndTypeEntry CONSTANT_NameAndType} constant kind. */
|
||||
int TAG_NAME_AND_TYPE = 12;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link PackageEntry CONSTANT_Package} constant kind. */
|
||||
int TAG_PACKAGE = 20;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link StringEntry CONSTANT_String} constant kind. */
|
||||
int TAG_STRING = 8;
|
||||
|
||||
/** The {@linkplain #tag tag} for {@link Utf8Entry CONSTANT_Utf8} constant kind. */
|
||||
int TAG_UTF8 = 1;
|
||||
|
||||
/**
|
||||
* {@return the constant pool this entry is from}
|
||||
*/
|
||||
|
@ -45,6 +96,10 @@ public sealed interface PoolEntry
|
|||
|
||||
/**
|
||||
* {@return the constant pool tag that describes the type of this entry}
|
||||
*
|
||||
* @apiNote
|
||||
* {@code TAG_}-prefixed constants in this class, such as {@link #TAG_UTF8},
|
||||
* describe the possible return values of this method.
|
||||
*/
|
||||
byte tag();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue