Top Description Inners Methods
java.lang.classfile.attribute

public sealed Interface StackMapFrameInfo

Known Direct Implementers
jdk.internal.classfile.impl.StackMapDecoder.StackMapFrameImpl
Annotations
@PreviewFeature
feature:CLASSFILE_API
Imports
java.lang.constant.ClassDesc, java.util.List, java.lang.classfile.Label, java.lang.classfile.constantpool.ClassEntry, jdk.internal.classfile.impl.StackMapDecoder, .TemporaryConstantPool, jdk.internal.javac.PreviewFeature

Preview

Second Preview of ClassFile API (JEP 466).

Programs can only use StackMapFrameInfo when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.

Models stack map frame of StackMapTable attribute 4.7.4.
Since
22

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static interface
StackMapFrameInfo.ObjectVerificationTypeInfo

Preview Second Preview of ClassFile API (JEP 466).

A stack value for an object type.
public static enum
StackMapFrameInfo.SimpleVerificationTypeInfo

Preview Second Preview of ClassFile API (JEP 466).

A simple stack value.
public static interface
StackMapFrameInfo.UninitializedVerificationTypeInfo

Preview Second Preview of ClassFile API (JEP 466).

An uninitialized stack value.
public static interface
StackMapFrameInfo.VerificationTypeInfo

Preview Second Preview of ClassFile API (JEP 466).

The type of a stack value.

Method Summary

Modifier and TypeMethod and Description
public int

Returns:

the frame compact form type
frameType
()

Returns the frame compact form type.

public List<StackMapFrameInfo.VerificationTypeInfo>

Returns:

the expanded local variable types
locals
()

Returns the expanded local variable types.

public static StackMapFrameInfo

Returns:

a new stack map frame
of
(Label
the location of the frame
target
,
List<StackMapFrameInfo.VerificationTypeInfo>
the complete list of frame locals
locals
,
List<StackMapFrameInfo.VerificationTypeInfo>
the complete frame stack
stack
)

Returns a new stack map frame.

public List<StackMapFrameInfo.VerificationTypeInfo>

Returns:

the expanded stack types
stack
()

Returns the expanded stack types.

public Label

Returns:

the frame target label
target
()

Returns the frame target label.

Method Detail

frameTypeback to summary
public int frameType()

Returns the frame compact form type.

Returns:int

the frame compact form type

localsback to summary
public List<StackMapFrameInfo.VerificationTypeInfo> locals()

Returns the expanded local variable types.

Returns:List<StackMapFrameInfo.VerificationTypeInfo>

the expanded local variable types

ofback to summary
public static StackMapFrameInfo of(Label target, List<StackMapFrameInfo.VerificationTypeInfo> locals, List<StackMapFrameInfo.VerificationTypeInfo> stack)

Returns a new stack map frame.

Parameters
target:Label

the location of the frame

locals:List<StackMapFrameInfo.VerificationTypeInfo>

the complete list of frame locals

stack:List<StackMapFrameInfo.VerificationTypeInfo>

the complete frame stack

Returns:StackMapFrameInfo

a new stack map frame

stackback to summary
public List<StackMapFrameInfo.VerificationTypeInfo> stack()

Returns the expanded stack types.

Returns:List<StackMapFrameInfo.VerificationTypeInfo>

the expanded stack types

targetback to summary
public Label target()

Returns the frame target label.

Returns:Label

the frame target label

java.lang.classfile.attribute back to summary

public sealed Interface StackMapFrameInfo.ObjectVerificationTypeInfo

extends VerificationTypeInfo
Known Direct Implementers
jdk.internal.classfile.impl.StackMapDecoder.ObjectVerificationTypeInfoImpl
Annotations
@PreviewFeature
feature:CLASSFILE_API

Preview

Second Preview of ClassFile API (JEP 466).

Programs can only use ObjectVerificationTypeInfo when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.

A stack value for an object type.
Since
22

Method Summary

Modifier and TypeMethod and Description
public ClassEntry

Returns:

the class of the object
className
()

Returns the class of the object.

public default ClassDesc

Returns:

the class of the object
classSymbol
()

Returns the class of the object.

public static StackMapFrameInfo.ObjectVerificationTypeInfo

Returns:

a new object verification type info
of
(ClassEntry
the class of the object
className
)

Returns a new object verification type info.

public static StackMapFrameInfo.ObjectVerificationTypeInfo

Returns:

a new object verification type info
of
(ClassDesc
the class of the object
classDesc
)

Returns a new object verification type info.

Inherited from java.lang.classfile.attribute.StackMapFrameInfo.VerificationTypeInfo:
tag

Method Detail

classNameback to summary
public ClassEntry className()

Returns the class of the object.

Returns:ClassEntry

the class of the object

classSymbolback to summary
public default ClassDesc classSymbol()

Returns the class of the object.

Returns:ClassDesc

the class of the object

ofback to summary
public static StackMapFrameInfo.ObjectVerificationTypeInfo of(ClassEntry className)

Returns a new object verification type info.

Parameters
className:ClassEntry

the class of the object

Returns:StackMapFrameInfo.ObjectVerificationTypeInfo

a new object verification type info

ofback to summary
public static StackMapFrameInfo.ObjectVerificationTypeInfo of(ClassDesc classDesc)

Returns a new object verification type info.

Parameters
classDesc:ClassDesc

the class of the object

Returns:StackMapFrameInfo.ObjectVerificationTypeInfo

a new object verification type info

Exceptions
IllegalArgumentException:
if classDesc represents a primitive type
java.lang.classfile.attribute back to summary

public final Enum StackMapFrameInfo.SimpleVerificationTypeInfo

extends Enum<StackMapFrameInfo.SimpleVerificationTypeInfo>
implements VerificationTypeInfo
Class Inheritance
All Implemented Interfaces
java.lang.classfile.attribute.StackMapFrameInfo.VerificationTypeInfo
Annotations
@PreviewFeature
feature:CLASSFILE_API

Preview

Second Preview of ClassFile API (JEP 466).

Programs can only use SimpleVerificationTypeInfo when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.

A simple stack value.
Since
22

Field Summary

Modifier and TypeField and Description
public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_DOUBLE

verification type double

public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_FLOAT

verification type float

public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_INTEGER

verification type int

public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_LONG

verification type long

public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_NULL

verification type null

public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_TOP

verification type top

public static final StackMapFrameInfo.SimpleVerificationTypeInfo
ITEM_UNINITIALIZED_THIS

verification type uninitializedThis

private final int

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public int
public static StackMapFrameInfo.SimpleVerificationTypeInfo
public static StackMapFrameInfo.SimpleVerificationTypeInfo[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

ITEM_DOUBLEback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_DOUBLE

verification type double

ITEM_FLOATback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_FLOAT

verification type float

ITEM_INTEGERback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_INTEGER

verification type int

ITEM_LONGback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_LONG

verification type long

ITEM_NULLback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_NULL

verification type null

ITEM_TOPback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_TOP

verification type top

ITEM_UNINITIALIZED_THISback to summary
public static final StackMapFrameInfo.SimpleVerificationTypeInfo ITEM_UNINITIALIZED_THIS

verification type uninitializedThis

tagback to summary
private final int tag

Constructor Detail

SimpleVerificationTypeInfoback to summary
private SimpleVerificationTypeInfo(int tag)

Method Detail

tagback to summary
public int tag()

Implements java.lang.classfile.attribute.StackMapFrameInfo.VerificationTypeInfo.tag.

Doc from java.lang.classfile.attribute.StackMapFrameInfo.VerificationTypeInfo.tag.

Returns the tag of the type info.

Returns:int

the tag of the type info

Annotations
@Override
valueOfback to summary
public static StackMapFrameInfo.SimpleVerificationTypeInfo valueOf(String name)
valuesback to summary
public static StackMapFrameInfo.SimpleVerificationTypeInfo[] values()
java.lang.classfile.attribute back to summary

public sealed Interface StackMapFrameInfo.UninitializedVerificationTypeInfo

extends VerificationTypeInfo
Known Direct Implementers
jdk.internal.classfile.impl.StackMapDecoder.UninitializedVerificationTypeInfoImpl
Annotations
@PreviewFeature
feature:CLASSFILE_API

Preview

Second Preview of ClassFile API (JEP 466).

Programs can only use UninitializedVerificationTypeInfo when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.

An uninitialized stack value.
Since
22

Method Summary

Modifier and TypeMethod and Description
public Label

Returns:

the new instruction position that creates this unitialized object
newTarget
()

Returns the new instruction position that creates this unitialized object.

public static StackMapFrameInfo.UninitializedVerificationTypeInfo

Returns:

an unitialized verification type info
of
(Label
the new instruction position that creates this unitialized object
newTarget
)

Returns an unitialized verification type info.

Inherited from java.lang.classfile.attribute.StackMapFrameInfo.VerificationTypeInfo:
tag

Method Detail

newTargetback to summary
public Label newTarget()

Returns the new instruction position that creates this unitialized object.

Returns:Label

the new instruction position that creates this unitialized object

ofback to summary
public static StackMapFrameInfo.UninitializedVerificationTypeInfo of(Label newTarget)

Returns an unitialized verification type info.

Parameters
newTarget:Label

the new instruction position that creates this unitialized object

Returns:StackMapFrameInfo.UninitializedVerificationTypeInfo

an unitialized verification type info

java.lang.classfile.attribute back to summary

public sealed Interface StackMapFrameInfo.VerificationTypeInfo

Known Direct Subinterfaces
java.lang.classfile.attribute.StackMapFrameInfo.ObjectVerificationTypeInfo, java.lang.classfile.attribute.StackMapFrameInfo.UninitializedVerificationTypeInfo
Known Direct Implementers
java.lang.classfile.attribute.StackMapFrameInfo.SimpleVerificationTypeInfo
Annotations
@PreviewFeature
feature:CLASSFILE_API

Preview

Second Preview of ClassFile API (JEP 466).

Programs can only use VerificationTypeInfo when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.

The type of a stack value.
Since
22

Method Summary

Modifier and TypeMethod and Description
public int

Returns:

the tag of the type info
tag
()

Returns the tag of the type info.

Method Detail

tagback to summary
public int tag()

Returns the tag of the type info.

Returns:int

the tag of the type info