Interface DynamicConstantPoolEntry
- All Superinterfaces:
PoolEntry
- All Known Subinterfaces:
ConstantDynamicEntry, InvokeDynamicEntry
public sealed interface DynamicConstantPoolEntry
extends PoolEntry
permits ConstantDynamicEntry, InvokeDynamicEntry
Superinterface modeling dynamically-computed constant pool entries, which
include
ConstantDynamicEntry
and InvokeDynamicEntry
, in the
constant pool of a class
file.
Different types of dynamically-computed constant pool entries bear structural similarities, but they appear in distinct locations. As a result, their uses are represented by different symbolic descriptors, specific to each subtype.
A dynamic constant entry is composite:
DynamicConstantPoolEntry(
BootstrapMethodEntry bootstrap
,
NameAndTypeEntry nameAndType
)
- See Java Virtual Machine Specification:
-
4.4.10 The
CONSTANT_Dynamic_info
andCONSTANT_InvokeDynamic_info
Structures
5.4.3.6 Dynamically-Computed Constant and Call Site Resolution - Sealed Class Hierarchy Graph:
- Since:
- 24
- See Also:
-
Field Summary
Fields inherited from interface PoolEntry
TAG_CLASS, TAG_DOUBLE, TAG_DYNAMIC, TAG_FIELDREF, TAG_FLOAT, TAG_INTEGER, TAG_INTERFACE_METHODREF, TAG_INVOKE_DYNAMIC, TAG_LONG, TAG_METHOD_HANDLE, TAG_METHOD_TYPE, TAG_METHODREF, TAG_MODULE, TAG_NAME_AND_TYPE, TAG_PACKAGE, TAG_STRING, TAG_UTF8
-
Method Summary
Modifier and TypeMethodDescriptionReturns the entry in the bootstrap method table for this constant.int
Returns index of the entry in the bootstrap method table for this constant.default Utf8Entry
name()
Returns the name indicated by this symbolic reference.Returns the name and the descriptor string indicated by this symbolic reference.default Utf8Entry
type()
Returns the descriptor string indicated by this symbolic reference.Methods inherited from interface PoolEntry
constantPool, index, tag, width
-
Method Details
-
bootstrap
BootstrapMethodEntry bootstrap()Returns the entry in the bootstrap method table for this constant.- Returns:
- the entry in the bootstrap method table for this constant
- See Also:
-
bootstrapMethodIndex
int bootstrapMethodIndex()Returns index of the entry in the bootstrap method table for this constant. The return value is equivalent tobootstrap().bsmIndex()
.- Returns:
- index of the entry in the bootstrap method table for this constant
-
nameAndType
NameAndTypeEntry nameAndType()Returns the name and the descriptor string indicated by this symbolic reference.- Returns:
- the name and the descriptor string indicated by this symbolic reference
- See Also:
-
name
Returns the name indicated by this symbolic reference.- Returns:
- the name indicated by this symbolic reference
-
type
Returns the descriptor string indicated by this symbolic reference. This is a field descriptor string if this entry is aConstantDynamicEntry
, or a method descriptor string if this entry is aInvokeDynamicEntry
.- API Note:
- Each subinterface has its specific accessor named
typeSymbol
for the symbolic descriptor derived from this descriptor string. - Returns:
- the descriptor string indicated by this symbolic reference
-