Interface StackMapFrameInfo
public sealed interface StackMapFrameInfo
Models a stack map frame in a
StackMapTable
attribute (JVMS 4.7.4). A stack map frame must appear at the
beginning of each basic block in a method (JVMS 4.10.1).- API Note:
- In general, a stack map frame should be defined for each target of a
BranchInstruction, or unreachable code right after an unconditional branch instruction likegoto. The automatic stack map generation cannot handle unreachable code right after an unconditional jump; TheClassFile.DeadCodeOptionallows substituting such code, or advanced users can provide their own stack maps for dead code. - See Java Virtual Machine Specification:
-
4.7.4 The
StackMapTableAttribute
4.10.1 Verification by Type Checking - Since:
- 24
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceA stack value for an object type.static enumA simple stack value.static interfaceAn uninitialized stack value.static interfaceThe type of a stack or local variable value. -
Method Summary
Modifier and TypeMethodDescriptionintReturns the rawu1 frame_type.locals()Returns the expanded local variable types.static StackMapFrameInfoof(Label target, List<StackMapFrameInfo.VerificationTypeInfo> locals, List<StackMapFrameInfo.VerificationTypeInfo> stack) Returns a new stack map frame.stack()Returns the expanded operand stack types.target()Returns the frame target label.
-
Method Details
-
frameType
int frameType()Returns the rawu1 frame_type.- Returns:
- the raw
u1 frame_type
-
target
-
locals
List<StackMapFrameInfo.VerificationTypeInfo> locals()Returns the expanded local variable types.- Returns:
- the expanded local variable types
-
stack
Returns the expanded operand stack types.- Returns:
- the expanded operand stack types
-
of
static StackMapFrameInfo of(Label target, List<StackMapFrameInfo.VerificationTypeInfo> locals, List<StackMapFrameInfo.VerificationTypeInfo> stack) Returns a new stack map frame.- Parameters:
target- the location of the framelocals- the complete list of frame localsstack- the complete frame stack- Returns:
- a new stack map frame
-