Interface ClassFile
public sealed interface ClassFile
ClassFile
is a preview API of the Java platform.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
Represents a context for parsing, transforming, and generating classfiles.
A
ClassFile
has a set of options that condition how parsing and
generation is done.- Since:
- 22
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
Preview.Option describing attribute mappers for custom attributes.static enum
Preview.Option describing whether to process or discard unrecognized or problematic original attributes when a class, record component, field, method or code is transformed in its exploded form.static interface
Preview.Option describing the class hierarchy resolver to use when generating stack maps.static enum
Preview.Option describing whether to preserve the original constant pool when transforming a classfile.static enum
Preview.Option describing whether to patch out unreachable code.static enum
Preview.Option describing whether to filter unresolved labels.static enum
Preview.Option describing whether to process or discard debug elements.static enum
Preview.Option describing whether to process or discard line numbers.static interface
Preview.An option that affects the parsing and writing of classfiles.static enum
Preview.Option describing whether to automatically rewrite short jumps to long when necessary.static enum
Preview.Option describing whether to generate stackmaps. -
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The integer value used to encode the AALOAD instruction.static final int
The integer value used to encode the AASTORE instruction.static final int
The value of ABSTRACT access and property modifier.static final int
The value of ANNOTATION access and property modifier.static final int
The value of BRIDGE access and property modifier.static final int
The value of ENUM access and property modifier.static final int
The value of FINAL access and property modifier.static final int
The value of IDENTITY access and property modifier.static final int
The value of INTERFACE access and property modifier.static final int
The value of MANDATED access and property modifier.static final int
The value of MODULE access and property modifier.static final int
The value of NATIVE access and property modifier.static final int
The value of OPEN access and property modifier.static final int
The value of PRIVATE access and property modifier.static final int
The value of PROTECTED access and property modifier.static final int
The value of PUBLIC access and property modifier.static final int
The value of STATIC access and property modifier.static final int
The value of STATIC_PHASE access and property modifier.static final int
The value of STRICT access and property modifier.static final int
The value of SUPER access and property modifier.static final int
The value of SYNCHRONIZED access and property modifier.static final int
The value of SYNTHETIC access and property modifier.static final int
The value of TRANSIENT access and property modifier.static final int
The value of TRANSITIVE access and property modifier.static final int
The value of VARARGS access and property modifier.static final int
The value of VOLATILE access and property modifier.static final int
The integer value used to encode the ACONST_NULL instruction.static final int
The value of annotation element value type AEV_ANNOTATION.static final int
The value of annotation element value type AEV_ARRAY.static final int
The value of annotation element value type AEV_BOOLEAN.static final int
The value of annotation element value type AEV_BYTE.static final int
The value of annotation element value type AEV_CHAR.static final int
The value of annotation element value type AEV_CLASS.static final int
The value of annotation element value type AEV_DOUBLE.static final int
The value of annotation element value type AEV_ENUM.static final int
The value of annotation element value type AEV_FLOAT.static final int
The value of annotation element value type AEV_INT.static final int
The value of annotation element value type AEV_LONG.static final int
The value of annotation element value type AEV_SHORT.static final int
The value of annotation element value type AEV_STRING.static final int
The integer value used to encode the ALOAD instruction.static final int
The integer value used to encode the ALOAD_0 instruction.static final int
The integer value used to encode the ALOAD_1 instruction.static final int
The integer value used to encode the ALOAD_2 instruction.static final int
The integer value used to encode the ALOAD_3 instruction.static final int
The integer value used to encode the ANEWARRAY instruction.static final int
The integer value used to encode the ARETURN instruction.static final int
The integer value used to encode the ARRAYLENGTH instruction.static final int
The integer value used to encode the ASTORE instruction.static final int
The integer value used to encode the ASTORE_0 instruction.static final int
The integer value used to encode the ASTORE_1 instruction.static final int
The integer value used to encode the ASTORE_2 instruction.static final int
The integer value used to encode the ASTORE_3 instruction.static final int
The integer value used to encode the ATHROW instruction.static final int
The integer value used to encode the BALOAD instruction.static final int
The integer value used to encode the BASTORE instruction.static final int
The integer value used to encode the BIPUSH instruction.static final int
The integer value used to encode the CALOAD instruction.static final int
The integer value used to encode the CASTORE instruction.static final int
The integer value used to encode the CHECKCAST instruction.static final int
The value of ASSIGNMENTCharacterRangeInfo
PREVIEW kind.static final int
The value of BLOCKCharacterRangeInfo
PREVIEW kind.static final int
The value of BRANCH_FALSECharacterRangeInfo
PREVIEW kind.static final int
The value of BRANCH_TRUECharacterRangeInfo
PREVIEW kind.static final int
The value of CREATECharacterRangeInfo
PREVIEW kind.static final int
The value of FLOW_CONTROLLERCharacterRangeInfo
PREVIEW kind.static final int
The value of FLOW_TARGETCharacterRangeInfo
PREVIEW kind.static final int
The value of INVOKECharacterRangeInfo
PREVIEW kind.static final int
The value of STATEMENTCharacterRangeInfo
PREVIEW kind.static final int
The integer value used to encode the D2F instruction.static final int
The integer value used to encode the D2I instruction.static final int
The integer value used to encode the D2L instruction.static final int
The integer value used to encode the DADD instruction.static final int
The integer value used to encode the DALOAD instruction.static final int
The integer value used to encode the DASTORE instruction.static final int
The integer value used to encode the DCMPG instruction.static final int
The integer value used to encode the DCMPL instruction.static final int
The integer value used to encode the DCONST_0 instruction.static final int
The integer value used to encode the DCONST_1 instruction.static final int
The integer value used to encode the DDIV instruction.static final int
The value of default class access flagsstatic final int
The integer value used to encode the DLOAD instruction.static final int
The integer value used to encode the DLOAD_0 instruction.static final int
The integer value used to encode the DLOAD_1 instruction.static final int
The integer value used to encode the DLOAD_2 instruction.static final int
The integer value used to encode the DLOAD_3 instruction.static final int
The integer value used to encode the DMUL instruction.static final int
The integer value used to encode the DNEG instruction.static final int
The integer value used to encode the DREM instruction.static final int
The integer value used to encode the DRETURN instruction.static final int
The integer value used to encode the DSTORE instruction.static final int
The integer value used to encode the DSTORE_0 instruction.static final int
The integer value used to encode the DSTORE_1 instruction.static final int
The integer value used to encode the DSTORE_2 instruction.static final int
The integer value used to encode the DSTORE_3 instruction.static final int
The integer value used to encode the DSUB instruction.static final int
The integer value used to encode the DUP instruction.static final int
The integer value used to encode the DUP_X1 instruction.static final int
The integer value used to encode the DUP_X2 instruction.static final int
The integer value used to encode the DUP2 instruction.static final int
The integer value used to encode the DUP2_X1 instruction.static final int
The integer value used to encode the DUP2_X2 instruction.static final int
The integer value used to encode the F2D instruction.static final int
The integer value used to encode the F2I instruction.static final int
The integer value used to encode the F2L instruction.static final int
The integer value used to encode the FADD instruction.static final int
The integer value used to encode the FALOAD instruction.static final int
The integer value used to encode the FASTORE instruction.static final int
The integer value used to encode the FCMPG instruction.static final int
The integer value used to encode the FCMPL instruction.static final int
The integer value used to encode the FCONST_0 instruction.static final int
The integer value used to encode the FCONST_1 instruction.static final int
The integer value used to encode the FCONST_2 instruction.static final int
The integer value used to encode the FDIV instruction.static final int
The integer value used to encode the FLOAD instruction.static final int
The integer value used to encode the FLOAD_0 instruction.static final int
The integer value used to encode the FLOAD_1 instruction.static final int
The integer value used to encode the FLOAD_2 instruction.static final int
The integer value used to encode the FLOAD_3 instruction.static final int
The integer value used to encode the FMUL instruction.static final int
The integer value used to encode the FNEG instruction.static final int
The integer value used to encode the FREM instruction.static final int
The integer value used to encode the FRETURN instruction.static final int
The integer value used to encode the FSTORE instruction.static final int
The integer value used to encode the FSTORE_0 instruction.static final int
The integer value used to encode the FSTORE_1 instruction.static final int
The integer value used to encode the FSTORE_2 instruction.static final int
The integer value used to encode the FSTORE_3 instruction.static final int
The integer value used to encode the FSUB instruction.static final int
The integer value used to encode the GETFIELD instruction.static final int
The integer value used to encode the GETSTATIC instruction.static final int
The integer value used to encode the GOTO instruction.static final int
The integer value used to encode the GOTO_W instruction.static final int
The integer value used to encode the I2B instruction.static final int
The integer value used to encode the I2C instruction.static final int
The integer value used to encode the I2D instruction.static final int
The integer value used to encode the I2F instruction.static final int
The integer value used to encode the I2L instruction.static final int
The integer value used to encode the I2S instruction.static final int
The integer value used to encode the IADD instruction.static final int
The integer value used to encode the IALOAD instruction.static final int
The integer value used to encode the IAND instruction.static final int
The integer value used to encode the IASTORE instruction.static final int
The integer value used to encode the ICONST_0 instruction.static final int
The integer value used to encode the ICONST_1 instruction.static final int
The integer value used to encode the ICONST_2 instruction.static final int
The integer value used to encode the ICONST_3 instruction.static final int
The integer value used to encode the ICONST_4 instruction.static final int
The integer value used to encode the ICONST_5 instruction.static final int
The integer value used to encode the ICONST_M1 instruction.static final int
The integer value used to encode the IDIV instruction.static final int
The integer value used to encode the IF_ACMPEQ instruction.static final int
The integer value used to encode the IF_ACMPNE instruction.static final int
The integer value used to encode the IF_ICMPEQ instruction.static final int
The integer value used to encode the IF_ICMPGE instruction.static final int
The integer value used to encode the IF_ICMPGT instruction.static final int
The integer value used to encode the IF_ICMPLE instruction.static final int
The integer value used to encode the IF_ICMPLT instruction.static final int
The integer value used to encode the IF_ICMPNE instruction.static final int
The integer value used to encode the IFEQ instruction.static final int
The integer value used to encode the IFGE instruction.static final int
The integer value used to encode the IFGT instruction.static final int
The integer value used to encode the IFLE instruction.static final int
The integer value used to encode the IFLT instruction.static final int
The integer value used to encode the IFNE instruction.static final int
The integer value used to encode the IFNONNULL instruction.static final int
The integer value used to encode the IFNULL instruction.static final int
The integer value used to encode the IINC instruction.static final int
The integer value used to encode the ILOAD instruction.static final int
The integer value used to encode the ILOAD_0 instruction.static final int
The integer value used to encode the ILOAD_1 instruction.static final int
The integer value used to encode the ILOAD_2 instruction.static final int
The integer value used to encode the ILOAD_3 instruction.static final int
The integer value used to encode the IMUL instruction.static final int
The integer value used to encode the INEG instruction.static final int
The integer value used to encode the INSTANCEOF instruction.static final int
The integer value used to encode the INVOKEDYNAMIC instruction.static final int
The integer value used to encode the INVOKEINTERFACE instruction.static final int
The integer value used to encode the INVOKESPECIAL instruction.static final int
The integer value used to encode the INVOKESTATIC instruction.static final int
The integer value used to encode the INVOKEVIRTUAL instruction.static final int
The integer value used to encode the IOR instruction.static final int
The integer value used to encode the IREM instruction.static final int
The integer value used to encode the IRETURN instruction.static final int
The integer value used to encode the ISHL instruction.static final int
The integer value used to encode the ISHR instruction.static final int
The integer value used to encode the ISTORE instruction.static final int
The integer value used to encode the ISTORE_0 instruction.static final int
The integer value used to encode the ISTORE_1 instruction.static final int
The integer value used to encode the ISTORE_2 instruction.static final int
The integer value used to encode the ISTORE_3 instruction.static final int
The integer value used to encode the ISUB instruction.static final int
The integer value used to encode the IUSHR instruction.static final int
The integer value used to encode the IXOR instruction.static final int
The class major version of JAVA_1.static final int
The class major version of JAVA_10.static final int
The class major version of JAVA_11.static final int
The class major version of JAVA_12.static final int
The class major version of JAVA_13.static final int
The class major version of JAVA_14.static final int
The class major version of JAVA_15.static final int
The class major version of JAVA_16.static final int
The class major version of JAVA_17.static final int
The class major version of JAVA_18.static final int
The class major version of JAVA_19.static final int
The class major version of JAVA_2.static final int
The class major version of JAVA_20.static final int
The class major version of JAVA_21.static final int
The class major version of JAVA_22.static final int
67static final int
The class major version of JAVA_3.static final int
The class major version of JAVA_4.static final int
The class major version of JAVA_5.static final int
The class major version of JAVA_6.static final int
The class major version of JAVA_7.static final int
The class major version of JAVA_8.static final int
The class major version of JAVA_9.static final int
The integer value used to encode the JSR instruction.static final int
The integer value used to encode the JSR_W instruction.static final int
The integer value used to encode the L2D instruction.static final int
The integer value used to encode the L2F instruction.static final int
The integer value used to encode the L2I instruction.static final int
The integer value used to encode the LADD instruction.static final int
The integer value used to encode the LALOAD instruction.static final int
The integer value used to encode the LAND instruction.static final int
The integer value used to encode the LASTORE instruction.static final int
The integer value used to encode the LCMP instruction.static final int
The integer value used to encode the LCONST_0 instruction.static final int
The integer value used to encode the LCONST_1 instruction.static final int
The integer value used to encode the LDC instruction.static final int
The integer value used to encode the LDC_W instruction.static final int
The integer value used to encode the LDC2_W instruction.static final int
The integer value used to encode the LDIV instruction.static final int
The integer value used to encode the LLOAD instruction.static final int
The integer value used to encode the LLOAD_0 instruction.static final int
The integer value used to encode the LLOAD_1 instruction.static final int
The integer value used to encode the LLOAD_2 instruction.static final int
The integer value used to encode the LLOAD_3 instruction.static final int
The integer value used to encode the LMUL instruction.static final int
The integer value used to encode the LNEG instruction.static final int
The integer value used to encode the LOOKUPSWITCH instruction.static final int
The integer value used to encode the LOR instruction.static final int
The integer value used to encode the LREM instruction.static final int
The integer value used to encode the LRETURN instruction.static final int
The integer value used to encode the LSHL instruction.static final int
The integer value used to encode the LSHR instruction.static final int
The integer value used to encode the LSTORE instruction.static final int
The integer value used to encode the LSTORE_0 instruction.static final int
The integer value used to encode the LSTORE_1 instruction.static final int
The integer value used to encode the LSTORE_2 instruction.static final int
The integer value used to encode the LSTORE_3 instruction.static final int
The integer value used to encode the LSUB instruction.static final int
The integer value used to encode the LUSHR instruction.static final int
The integer value used to encode the LXOR instruction.static final int
0xCAFEBABEstatic final int
The integer value used to encode the MONITORENTER instruction.static final int
The integer value used to encode the MONITOREXIT instruction.static final int
The integer value used to encode the MULTIANEWARRAY instruction.static final int
The integer value used to encode the NEW instruction.static final int
The integer value used to encode the NEWARRAY instruction.static final int
The integer value used to encode the NOP instruction.static final int
The integer value used to encode the POP instruction.static final int
The integer value used to encode the POP2 instruction.static final int
A minor version number indicating a class uses preview features of a Java SE version since 12, for major versions 56 and above.static final int
The integer value used to encode the PUTFIELD instruction.static final int
The integer value used to encode the PUTSTATIC instruction.static final int
The integer value used to encode the RET instruction.static final int
The integer value used to encode the RETURN instruction.static final int
The integer value used to encode the SALOAD instruction.static final int
The integer value used to encode the SASTORE instruction.static final int
The integer value used to encode the SIPUSH instruction.static final int
The integer value used to encode the SWAP instruction.static final int
The integer value used to encode the TABLESWITCH instruction.static final int
The value of constant pool tag CLASS.static final int
The value of constant pool tag CONSTANTDYNAMIC.static final int
The value of constant pool tag DOUBLE.static final int
The value of constant pool tag FIELDREF.static final int
The value of constant pool tag FLOAT.static final int
The value of constant pool tag INTEGER.static final int
The value of constant pool tag INTERFACEMETHODREF.static final int
The value of constant pool tag INVOKEDYNAMIC.static final int
The value of constant pool tag LONG.static final int
The value of constant pool tag METHODHANDLE.static final int
The value of constant pool tag METHODREF.static final int
The value of constant pool tag METHODTYPE.static final int
The value of constant pool tag MODULE.static final int
The value of constant pool tag NAMEANDTYPE.static final int
The value of constant pool tag PACKAGE.static final int
The value of constant pool tag STRING.static final int
The value of constant pool tag UNICODE.static final int
The value of constant pool tag UTF8.static final int
The value of type annotation target type CAST.static final int
The value of type annotation target type CLASS_EXTENDS.static final int
The value of type annotation target type CLASS_TYPE_PARAMETER.static final int
The value of type annotation target type CLASS_TYPE_PARAMETER_BOUND.static final int
The value of type annotation target type CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT.static final int
The value of type annotation target type CONSTRUCTOR_REFERENCE.static final int
The value of type annotation target type CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT.static final int
The value of type annotation target type EXCEPTION_PARAMETER.static final int
The value of type annotation target type FIELD.static final int
The value of type annotation target type INSTANCEOF.static final int
The value of type annotation target type LOCAL_VARIABLE.static final int
The value of type annotation target type METHOD_FORMAL_PARAMETER.static final int
The value of type annotation target type METHOD_INVOCATION_TYPE_ARGUMENT.static final int
The value of type annotation target type METHOD_RECEIVER.static final int
The value of type annotation target type METHOD_REFERENCE.static final int
The value of type annotation target type METHOD_REFERENCE_TYPE_ARGUMENT.static final int
The value of type annotation target type METHOD_RETURN.static final int
The value of type annotation target type METHOD_TYPE_PARAMETER.static final int
The value of type annotation target type METHOD_TYPE_PARAMETER_BOUND.static final int
The value of type annotation target type NEW.static final int
The value of type annotation target type RESOURCE_VARIABLE.static final int
The value of type annotation target type THROWS.static final int
The value of verification type DOUBLE.static final int
The value of verification type FLOAT.static final int
The value of verification type INTEGER.static final int
The value of verification type LONG.static final int
The value of verification type NULL.static final int
The value of verification type OBJECT.static final int
The value of verification type TOP.static final int
The value of verification type UNINITIALIZED.static final int
The value of verification type UNINITIALIZED_THIS.static final int
The integer value used to encode the WIDE instruction. -
Method Summary
Modifier and TypeMethodDescriptionbyte[]
build
(ClassEntryPREVIEW thisClassEntry, ConstantPoolBuilderPREVIEW constantPool, Consumer<? super ClassBuilderPREVIEW> handler) Build a classfile into a byte array using the provided constant pool builder.default byte[]
build
(ClassDesc thisClass, Consumer<? super ClassBuilderPREVIEW> handler) Build a classfile into a byte array.default byte[]
buildModule
(ModuleAttributePREVIEW moduleAttribute) Build a module descriptor into a byte array.default byte[]
buildModule
(ModuleAttributePREVIEW moduleAttribute, Consumer<? super ClassBuilderPREVIEW> handler) Build a module descriptor into a byte array.default void
buildModuleTo
(Path path, ModuleAttributePREVIEW moduleAttribute) Build a module descriptor into a file.default void
buildModuleTo
(Path path, ModuleAttributePREVIEW moduleAttribute, Consumer<? super ClassBuilderPREVIEW> handler) Build a module descriptor into a file.default void
buildTo
(Path path, ClassEntryPREVIEW thisClassEntry, ConstantPoolBuilderPREVIEW constantPool, Consumer<? super ClassBuilderPREVIEW> handler) Build a classfile into a file using the provided constant pool builder.default void
Build a classfile into a file.static int
Returns the latest major Java version.static int
Returns the latest minor Java version.of()
Returns a context with default options.of
(ClassFile.OptionPREVIEW... options) Returns a new context with options altered from the default.parse
(byte[] bytes) Parse a classfile into aClassModel
PREVIEW.default ClassModelPREVIEW
Parse a classfile into aClassModel
PREVIEW.default byte[]
transform
(ClassModelPREVIEW model, ClassTransformPREVIEW transform) Transform one classfile into a new classfile with the aid of aClassTransform
PREVIEW.byte[]
transform
(ClassModelPREVIEW model, ClassEntryPREVIEW newClassName, ClassTransformPREVIEW transform) Transform one classfile into a new classfile with the aid of aClassTransform
PREVIEW.default byte[]
transform
(ClassModelPREVIEW model, ClassDesc newClassName, ClassTransformPREVIEW transform) Transform one classfile into a new classfile with the aid of aClassTransform
PREVIEW.verify
(byte[] bytes) Verify a classfile.verify
(ClassModelPREVIEW model) Verify a classfile.default List
<VerifyError> Verify a classfile.withOptions
(ClassFile.OptionPREVIEW... options) Returns a copy of the context with altered options.
-
Field Details
-
MAGIC_NUMBER
static final int MAGIC_NUMBER0xCAFEBABE- See Also:
-
NOP
static final int NOPThe integer value used to encode the NOP instruction.- See Also:
-
ACONST_NULL
static final int ACONST_NULLThe integer value used to encode the ACONST_NULL instruction.- See Also:
-
ICONST_M1
static final int ICONST_M1The integer value used to encode the ICONST_M1 instruction.- See Also:
-
ICONST_0
static final int ICONST_0The integer value used to encode the ICONST_0 instruction.- See Also:
-
ICONST_1
static final int ICONST_1The integer value used to encode the ICONST_1 instruction.- See Also:
-
ICONST_2
static final int ICONST_2The integer value used to encode the ICONST_2 instruction.- See Also:
-
ICONST_3
static final int ICONST_3The integer value used to encode the ICONST_3 instruction.- See Also:
-
ICONST_4
static final int ICONST_4The integer value used to encode the ICONST_4 instruction.- See Also:
-
ICONST_5
static final int ICONST_5The integer value used to encode the ICONST_5 instruction.- See Also:
-
LCONST_0
static final int LCONST_0The integer value used to encode the LCONST_0 instruction.- See Also:
-
LCONST_1
static final int LCONST_1The integer value used to encode the LCONST_1 instruction.- See Also:
-
FCONST_0
static final int FCONST_0The integer value used to encode the FCONST_0 instruction.- See Also:
-
FCONST_1
static final int FCONST_1The integer value used to encode the FCONST_1 instruction.- See Also:
-
FCONST_2
static final int FCONST_2The integer value used to encode the FCONST_2 instruction.- See Also:
-
DCONST_0
static final int DCONST_0The integer value used to encode the DCONST_0 instruction.- See Also:
-
DCONST_1
static final int DCONST_1The integer value used to encode the DCONST_1 instruction.- See Also:
-
BIPUSH
static final int BIPUSHThe integer value used to encode the BIPUSH instruction.- See Also:
-
SIPUSH
static final int SIPUSHThe integer value used to encode the SIPUSH instruction.- See Also:
-
LDC
static final int LDCThe integer value used to encode the LDC instruction.- See Also:
-
LDC_W
static final int LDC_WThe integer value used to encode the LDC_W instruction.- See Also:
-
LDC2_W
static final int LDC2_WThe integer value used to encode the LDC2_W instruction.- See Also:
-
ILOAD
static final int ILOADThe integer value used to encode the ILOAD instruction.- See Also:
-
LLOAD
static final int LLOADThe integer value used to encode the LLOAD instruction.- See Also:
-
FLOAD
static final int FLOADThe integer value used to encode the FLOAD instruction.- See Also:
-
DLOAD
static final int DLOADThe integer value used to encode the DLOAD instruction.- See Also:
-
ALOAD
static final int ALOADThe integer value used to encode the ALOAD instruction.- See Also:
-
ILOAD_0
static final int ILOAD_0The integer value used to encode the ILOAD_0 instruction.- See Also:
-
ILOAD_1
static final int ILOAD_1The integer value used to encode the ILOAD_1 instruction.- See Also:
-
ILOAD_2
static final int ILOAD_2The integer value used to encode the ILOAD_2 instruction.- See Also:
-
ILOAD_3
static final int ILOAD_3The integer value used to encode the ILOAD_3 instruction.- See Also:
-
LLOAD_0
static final int LLOAD_0The integer value used to encode the LLOAD_0 instruction.- See Also:
-
LLOAD_1
static final int LLOAD_1The integer value used to encode the LLOAD_1 instruction.- See Also:
-
LLOAD_2
static final int LLOAD_2The integer value used to encode the LLOAD_2 instruction.- See Also:
-
LLOAD_3
static final int LLOAD_3The integer value used to encode the LLOAD_3 instruction.- See Also:
-
FLOAD_0
static final int FLOAD_0The integer value used to encode the FLOAD_0 instruction.- See Also:
-
FLOAD_1
static final int FLOAD_1The integer value used to encode the FLOAD_1 instruction.- See Also:
-
FLOAD_2
static final int FLOAD_2The integer value used to encode the FLOAD_2 instruction.- See Also:
-
FLOAD_3
static final int FLOAD_3The integer value used to encode the FLOAD_3 instruction.- See Also:
-
DLOAD_0
static final int DLOAD_0The integer value used to encode the DLOAD_0 instruction.- See Also:
-
DLOAD_1
static final int DLOAD_1The integer value used to encode the DLOAD_1 instruction.- See Also:
-
DLOAD_2
static final int DLOAD_2The integer value used to encode the DLOAD_2 instruction.- See Also:
-
DLOAD_3
static final int DLOAD_3The integer value used to encode the DLOAD_3 instruction.- See Also:
-
ALOAD_0
static final int ALOAD_0The integer value used to encode the ALOAD_0 instruction.- See Also:
-
ALOAD_1
static final int ALOAD_1The integer value used to encode the ALOAD_1 instruction.- See Also:
-
ALOAD_2
static final int ALOAD_2The integer value used to encode the ALOAD_2 instruction.- See Also:
-
ALOAD_3
static final int ALOAD_3The integer value used to encode the ALOAD_3 instruction.- See Also:
-
IALOAD
static final int IALOADThe integer value used to encode the IALOAD instruction.- See Also:
-
LALOAD
static final int LALOADThe integer value used to encode the LALOAD instruction.- See Also:
-
FALOAD
static final int FALOADThe integer value used to encode the FALOAD instruction.- See Also:
-
DALOAD
static final int DALOADThe integer value used to encode the DALOAD instruction.- See Also:
-
AALOAD
static final int AALOADThe integer value used to encode the AALOAD instruction.- See Also:
-
BALOAD
static final int BALOADThe integer value used to encode the BALOAD instruction.- See Also:
-
CALOAD
static final int CALOADThe integer value used to encode the CALOAD instruction.- See Also:
-
SALOAD
static final int SALOADThe integer value used to encode the SALOAD instruction.- See Also:
-
ISTORE
static final int ISTOREThe integer value used to encode the ISTORE instruction.- See Also:
-
LSTORE
static final int LSTOREThe integer value used to encode the LSTORE instruction.- See Also:
-
FSTORE
static final int FSTOREThe integer value used to encode the FSTORE instruction.- See Also:
-
DSTORE
static final int DSTOREThe integer value used to encode the DSTORE instruction.- See Also:
-
ASTORE
static final int ASTOREThe integer value used to encode the ASTORE instruction.- See Also:
-
ISTORE_0
static final int ISTORE_0The integer value used to encode the ISTORE_0 instruction.- See Also:
-
ISTORE_1
static final int ISTORE_1The integer value used to encode the ISTORE_1 instruction.- See Also:
-
ISTORE_2
static final int ISTORE_2The integer value used to encode the ISTORE_2 instruction.- See Also:
-
ISTORE_3
static final int ISTORE_3The integer value used to encode the ISTORE_3 instruction.- See Also:
-
LSTORE_0
static final int LSTORE_0The integer value used to encode the LSTORE_0 instruction.- See Also:
-
LSTORE_1
static final int LSTORE_1The integer value used to encode the LSTORE_1 instruction.- See Also:
-
LSTORE_2
static final int LSTORE_2The integer value used to encode the LSTORE_2 instruction.- See Also:
-
LSTORE_3
static final int LSTORE_3The integer value used to encode the LSTORE_3 instruction.- See Also:
-
FSTORE_0
static final int FSTORE_0The integer value used to encode the FSTORE_0 instruction.- See Also:
-
FSTORE_1
static final int FSTORE_1The integer value used to encode the FSTORE_1 instruction.- See Also:
-
FSTORE_2
static final int FSTORE_2The integer value used to encode the FSTORE_2 instruction.- See Also:
-
FSTORE_3
static final int FSTORE_3The integer value used to encode the FSTORE_3 instruction.- See Also:
-
DSTORE_0
static final int DSTORE_0The integer value used to encode the DSTORE_0 instruction.- See Also:
-
DSTORE_1
static final int DSTORE_1The integer value used to encode the DSTORE_1 instruction.- See Also:
-
DSTORE_2
static final int DSTORE_2The integer value used to encode the DSTORE_2 instruction.- See Also:
-
DSTORE_3
static final int DSTORE_3The integer value used to encode the DSTORE_3 instruction.- See Also:
-
ASTORE_0
static final int ASTORE_0The integer value used to encode the ASTORE_0 instruction.- See Also:
-
ASTORE_1
static final int ASTORE_1The integer value used to encode the ASTORE_1 instruction.- See Also:
-
ASTORE_2
static final int ASTORE_2The integer value used to encode the ASTORE_2 instruction.- See Also:
-
ASTORE_3
static final int ASTORE_3The integer value used to encode the ASTORE_3 instruction.- See Also:
-
IASTORE
static final int IASTOREThe integer value used to encode the IASTORE instruction.- See Also:
-
LASTORE
static final int LASTOREThe integer value used to encode the LASTORE instruction.- See Also:
-
FASTORE
static final int FASTOREThe integer value used to encode the FASTORE instruction.- See Also:
-
DASTORE
static final int DASTOREThe integer value used to encode the DASTORE instruction.- See Also:
-
AASTORE
static final int AASTOREThe integer value used to encode the AASTORE instruction.- See Also:
-
BASTORE
static final int BASTOREThe integer value used to encode the BASTORE instruction.- See Also:
-
CASTORE
static final int CASTOREThe integer value used to encode the CASTORE instruction.- See Also:
-
SASTORE
static final int SASTOREThe integer value used to encode the SASTORE instruction.- See Also:
-
POP
static final int POPThe integer value used to encode the POP instruction.- See Also:
-
POP2
static final int POP2The integer value used to encode the POP2 instruction.- See Also:
-
DUP
static final int DUPThe integer value used to encode the DUP instruction.- See Also:
-
DUP_X1
static final int DUP_X1The integer value used to encode the DUP_X1 instruction.- See Also:
-
DUP_X2
static final int DUP_X2The integer value used to encode the DUP_X2 instruction.- See Also:
-
DUP2
static final int DUP2The integer value used to encode the DUP2 instruction.- See Also:
-
DUP2_X1
static final int DUP2_X1The integer value used to encode the DUP2_X1 instruction.- See Also:
-
DUP2_X2
static final int DUP2_X2The integer value used to encode the DUP2_X2 instruction.- See Also:
-
SWAP
static final int SWAPThe integer value used to encode the SWAP instruction.- See Also:
-
IADD
static final int IADDThe integer value used to encode the IADD instruction.- See Also:
-
LADD
static final int LADDThe integer value used to encode the LADD instruction.- See Also:
-
FADD
static final int FADDThe integer value used to encode the FADD instruction.- See Also:
-
DADD
static final int DADDThe integer value used to encode the DADD instruction.- See Also:
-
ISUB
static final int ISUBThe integer value used to encode the ISUB instruction.- See Also:
-
LSUB
static final int LSUBThe integer value used to encode the LSUB instruction.- See Also:
-
FSUB
static final int FSUBThe integer value used to encode the FSUB instruction.- See Also:
-
DSUB
static final int DSUBThe integer value used to encode the DSUB instruction.- See Also:
-
IMUL
static final int IMULThe integer value used to encode the IMUL instruction.- See Also:
-
LMUL
static final int LMULThe integer value used to encode the LMUL instruction.- See Also:
-
FMUL
static final int FMULThe integer value used to encode the FMUL instruction.- See Also:
-
DMUL
static final int DMULThe integer value used to encode the DMUL instruction.- See Also:
-
IDIV
static final int IDIVThe integer value used to encode the IDIV instruction.- See Also:
-
LDIV
static final int LDIVThe integer value used to encode the LDIV instruction.- See Also:
-
FDIV
static final int FDIVThe integer value used to encode the FDIV instruction.- See Also:
-
DDIV
static final int DDIVThe integer value used to encode the DDIV instruction.- See Also:
-
IREM
static final int IREMThe integer value used to encode the IREM instruction.- See Also:
-
LREM
static final int LREMThe integer value used to encode the LREM instruction.- See Also:
-
FREM
static final int FREMThe integer value used to encode the FREM instruction.- See Also:
-
DREM
static final int DREMThe integer value used to encode the DREM instruction.- See Also:
-
INEG
static final int INEGThe integer value used to encode the INEG instruction.- See Also:
-
LNEG
static final int LNEGThe integer value used to encode the LNEG instruction.- See Also:
-
FNEG
static final int FNEGThe integer value used to encode the FNEG instruction.- See Also:
-
DNEG
static final int DNEGThe integer value used to encode the DNEG instruction.- See Also:
-
ISHL
static final int ISHLThe integer value used to encode the ISHL instruction.- See Also:
-
LSHL
static final int LSHLThe integer value used to encode the LSHL instruction.- See Also:
-
ISHR
static final int ISHRThe integer value used to encode the ISHR instruction.- See Also:
-
LSHR
static final int LSHRThe integer value used to encode the LSHR instruction.- See Also:
-
IUSHR
static final int IUSHRThe integer value used to encode the IUSHR instruction.- See Also:
-
LUSHR
static final int LUSHRThe integer value used to encode the LUSHR instruction.- See Also:
-
IAND
static final int IANDThe integer value used to encode the IAND instruction.- See Also:
-
LAND
static final int LANDThe integer value used to encode the LAND instruction.- See Also:
-
IOR
static final int IORThe integer value used to encode the IOR instruction.- See Also:
-
LOR
static final int LORThe integer value used to encode the LOR instruction.- See Also:
-
IXOR
static final int IXORThe integer value used to encode the IXOR instruction.- See Also:
-
LXOR
static final int LXORThe integer value used to encode the LXOR instruction.- See Also:
-
IINC
static final int IINCThe integer value used to encode the IINC instruction.- See Also:
-
I2L
static final int I2LThe integer value used to encode the I2L instruction.- See Also:
-
I2F
static final int I2FThe integer value used to encode the I2F instruction.- See Also:
-
I2D
static final int I2DThe integer value used to encode the I2D instruction.- See Also:
-
L2I
static final int L2IThe integer value used to encode the L2I instruction.- See Also:
-
L2F
static final int L2FThe integer value used to encode the L2F instruction.- See Also:
-
L2D
static final int L2DThe integer value used to encode the L2D instruction.- See Also:
-
F2I
static final int F2IThe integer value used to encode the F2I instruction.- See Also:
-
F2L
static final int F2LThe integer value used to encode the F2L instruction.- See Also:
-
F2D
static final int F2DThe integer value used to encode the F2D instruction.- See Also:
-
D2I
static final int D2IThe integer value used to encode the D2I instruction.- See Also:
-
D2L
static final int D2LThe integer value used to encode the D2L instruction.- See Also:
-
D2F
static final int D2FThe integer value used to encode the D2F instruction.- See Also:
-
I2B
static final int I2BThe integer value used to encode the I2B instruction.- See Also:
-
I2C
static final int I2CThe integer value used to encode the I2C instruction.- See Also:
-
I2S
static final int I2SThe integer value used to encode the I2S instruction.- See Also:
-
LCMP
static final int LCMPThe integer value used to encode the LCMP instruction.- See Also:
-
FCMPL
static final int FCMPLThe integer value used to encode the FCMPL instruction.- See Also:
-
FCMPG
static final int FCMPGThe integer value used to encode the FCMPG instruction.- See Also:
-
DCMPL
static final int DCMPLThe integer value used to encode the DCMPL instruction.- See Also:
-
DCMPG
static final int DCMPGThe integer value used to encode the DCMPG instruction.- See Also:
-
IFEQ
static final int IFEQThe integer value used to encode the IFEQ instruction.- See Also:
-
IFNE
static final int IFNEThe integer value used to encode the IFNE instruction.- See Also:
-
IFLT
static final int IFLTThe integer value used to encode the IFLT instruction.- See Also:
-
IFGE
static final int IFGEThe integer value used to encode the IFGE instruction.- See Also:
-
IFGT
static final int IFGTThe integer value used to encode the IFGT instruction.- See Also:
-
IFLE
static final int IFLEThe integer value used to encode the IFLE instruction.- See Also:
-
IF_ICMPEQ
static final int IF_ICMPEQThe integer value used to encode the IF_ICMPEQ instruction.- See Also:
-
IF_ICMPNE
static final int IF_ICMPNEThe integer value used to encode the IF_ICMPNE instruction.- See Also:
-
IF_ICMPLT
static final int IF_ICMPLTThe integer value used to encode the IF_ICMPLT instruction.- See Also:
-
IF_ICMPGE
static final int IF_ICMPGEThe integer value used to encode the IF_ICMPGE instruction.- See Also:
-
IF_ICMPGT
static final int IF_ICMPGTThe integer value used to encode the IF_ICMPGT instruction.- See Also:
-
IF_ICMPLE
static final int IF_ICMPLEThe integer value used to encode the IF_ICMPLE instruction.- See Also:
-
IF_ACMPEQ
static final int IF_ACMPEQThe integer value used to encode the IF_ACMPEQ instruction.- See Also:
-
IF_ACMPNE
static final int IF_ACMPNEThe integer value used to encode the IF_ACMPNE instruction.- See Also:
-
GOTO
static final int GOTOThe integer value used to encode the GOTO instruction.- See Also:
-
JSR
static final int JSRThe integer value used to encode the JSR instruction.- See Also:
-
RET
static final int RETThe integer value used to encode the RET instruction.- See Also:
-
TABLESWITCH
static final int TABLESWITCHThe integer value used to encode the TABLESWITCH instruction.- See Also:
-
LOOKUPSWITCH
static final int LOOKUPSWITCHThe integer value used to encode the LOOKUPSWITCH instruction.- See Also:
-
IRETURN
static final int IRETURNThe integer value used to encode the IRETURN instruction.- See Also:
-
LRETURN
static final int LRETURNThe integer value used to encode the LRETURN instruction.- See Also:
-
FRETURN
static final int FRETURNThe integer value used to encode the FRETURN instruction.- See Also:
-
DRETURN
static final int DRETURNThe integer value used to encode the DRETURN instruction.- See Also:
-
ARETURN
static final int ARETURNThe integer value used to encode the ARETURN instruction.- See Also:
-
RETURN
static final int RETURNThe integer value used to encode the RETURN instruction.- See Also:
-
GETSTATIC
static final int GETSTATICThe integer value used to encode the GETSTATIC instruction.- See Also:
-
PUTSTATIC
static final int PUTSTATICThe integer value used to encode the PUTSTATIC instruction.- See Also:
-
GETFIELD
static final int GETFIELDThe integer value used to encode the GETFIELD instruction.- See Also:
-
PUTFIELD
static final int PUTFIELDThe integer value used to encode the PUTFIELD instruction.- See Also:
-
INVOKEVIRTUAL
static final int INVOKEVIRTUALThe integer value used to encode the INVOKEVIRTUAL instruction.- See Also:
-
INVOKESPECIAL
static final int INVOKESPECIALThe integer value used to encode the INVOKESPECIAL instruction.- See Also:
-
INVOKESTATIC
static final int INVOKESTATICThe integer value used to encode the INVOKESTATIC instruction.- See Also:
-
INVOKEINTERFACE
static final int INVOKEINTERFACEThe integer value used to encode the INVOKEINTERFACE instruction.- See Also:
-
INVOKEDYNAMIC
static final int INVOKEDYNAMICThe integer value used to encode the INVOKEDYNAMIC instruction.- See Also:
-
NEW
static final int NEWThe integer value used to encode the NEW instruction.- See Also:
-
NEWARRAY
static final int NEWARRAYThe integer value used to encode the NEWARRAY instruction.- See Also:
-
ANEWARRAY
static final int ANEWARRAYThe integer value used to encode the ANEWARRAY instruction.- See Also:
-
ARRAYLENGTH
static final int ARRAYLENGTHThe integer value used to encode the ARRAYLENGTH instruction.- See Also:
-
ATHROW
static final int ATHROWThe integer value used to encode the ATHROW instruction.- See Also:
-
CHECKCAST
static final int CHECKCASTThe integer value used to encode the CHECKCAST instruction.- See Also:
-
INSTANCEOF
static final int INSTANCEOFThe integer value used to encode the INSTANCEOF instruction.- See Also:
-
MONITORENTER
static final int MONITORENTERThe integer value used to encode the MONITORENTER instruction.- See Also:
-
MONITOREXIT
static final int MONITOREXITThe integer value used to encode the MONITOREXIT instruction.- See Also:
-
WIDE
static final int WIDEThe integer value used to encode the WIDE instruction.- See Also:
-
MULTIANEWARRAY
static final int MULTIANEWARRAYThe integer value used to encode the MULTIANEWARRAY instruction.- See Also:
-
IFNULL
static final int IFNULLThe integer value used to encode the IFNULL instruction.- See Also:
-
IFNONNULL
static final int IFNONNULLThe integer value used to encode the IFNONNULL instruction.- See Also:
-
GOTO_W
static final int GOTO_WThe integer value used to encode the GOTO_W instruction.- See Also:
-
JSR_W
static final int JSR_WThe integer value used to encode the JSR_W instruction.- See Also:
-
ACC_PUBLIC
static final int ACC_PUBLICThe value of PUBLIC access and property modifier.- See Also:
-
ACC_PROTECTED
static final int ACC_PROTECTEDThe value of PROTECTED access and property modifier.- See Also:
-
ACC_PRIVATE
static final int ACC_PRIVATEThe value of PRIVATE access and property modifier.- See Also:
-
ACC_INTERFACE
static final int ACC_INTERFACEThe value of INTERFACE access and property modifier.- See Also:
-
ACC_ENUM
static final int ACC_ENUMThe value of ENUM access and property modifier.- See Also:
-
ACC_ANNOTATION
static final int ACC_ANNOTATIONThe value of ANNOTATION access and property modifier.- See Also:
-
ACC_SUPER
static final int ACC_SUPERThe value of SUPER access and property modifier.- See Also:
-
ACC_IDENTITY
static final int ACC_IDENTITYThe value of IDENTITY access and property modifier.- See Also:
-
ACC_ABSTRACT
static final int ACC_ABSTRACTThe value of ABSTRACT access and property modifier.- See Also:
-
ACC_VOLATILE
static final int ACC_VOLATILEThe value of VOLATILE access and property modifier.- See Also:
-
ACC_TRANSIENT
static final int ACC_TRANSIENTThe value of TRANSIENT access and property modifier.- See Also:
-
ACC_SYNTHETIC
static final int ACC_SYNTHETICThe value of SYNTHETIC access and property modifier.- See Also:
-
ACC_STATIC
static final int ACC_STATICThe value of STATIC access and property modifier.- See Also:
-
ACC_FINAL
static final int ACC_FINALThe value of FINAL access and property modifier.- See Also:
-
ACC_SYNCHRONIZED
static final int ACC_SYNCHRONIZEDThe value of SYNCHRONIZED access and property modifier.- See Also:
-
ACC_BRIDGE
static final int ACC_BRIDGEThe value of BRIDGE access and property modifier.- See Also:
-
ACC_VARARGS
static final int ACC_VARARGSThe value of VARARGS access and property modifier.- See Also:
-
ACC_NATIVE
static final int ACC_NATIVEThe value of NATIVE access and property modifier.- See Also:
-
ACC_STRICT
static final int ACC_STRICTThe value of STRICT access and property modifier.- See Also:
-
ACC_MODULE
static final int ACC_MODULEThe value of MODULE access and property modifier.- See Also:
-
ACC_OPEN
static final int ACC_OPENThe value of OPEN access and property modifier.- See Also:
-
ACC_MANDATED
static final int ACC_MANDATEDThe value of MANDATED access and property modifier.- See Also:
-
ACC_TRANSITIVE
static final int ACC_TRANSITIVEThe value of TRANSITIVE access and property modifier.- See Also:
-
ACC_STATIC_PHASE
static final int ACC_STATIC_PHASEThe value of STATIC_PHASE access and property modifier.- See Also:
-
CRT_STATEMENT
-
CRT_BLOCK
-
CRT_ASSIGNMENT
-
CRT_FLOW_CONTROLLER
static final int CRT_FLOW_CONTROLLERThe value of FLOW_CONTROLLERCharacterRangeInfo
PREVIEW kind.- See Also:
-
CRT_FLOW_TARGET
-
CRT_INVOKE
-
CRT_CREATE
-
CRT_BRANCH_TRUE
-
CRT_BRANCH_FALSE
static final int CRT_BRANCH_FALSEThe value of BRANCH_FALSECharacterRangeInfo
PREVIEW kind.- See Also:
-
TAG_CLASS
static final int TAG_CLASSThe value of constant pool tag CLASS.- See Also:
-
TAG_CONSTANTDYNAMIC
static final int TAG_CONSTANTDYNAMICThe value of constant pool tag CONSTANTDYNAMIC.- See Also:
-
TAG_DOUBLE
static final int TAG_DOUBLEThe value of constant pool tag DOUBLE.- See Also:
-
TAG_FIELDREF
static final int TAG_FIELDREFThe value of constant pool tag FIELDREF.- See Also:
-
TAG_FLOAT
static final int TAG_FLOATThe value of constant pool tag FLOAT.- See Also:
-
TAG_INTEGER
static final int TAG_INTEGERThe value of constant pool tag INTEGER.- See Also:
-
TAG_INTERFACEMETHODREF
static final int TAG_INTERFACEMETHODREFThe value of constant pool tag INTERFACEMETHODREF.- See Also:
-
TAG_INVOKEDYNAMIC
static final int TAG_INVOKEDYNAMICThe value of constant pool tag INVOKEDYNAMIC.- See Also:
-
TAG_LONG
static final int TAG_LONGThe value of constant pool tag LONG.- See Also:
-
TAG_METHODHANDLE
static final int TAG_METHODHANDLEThe value of constant pool tag METHODHANDLE.- See Also:
-
TAG_METHODREF
static final int TAG_METHODREFThe value of constant pool tag METHODREF.- See Also:
-
TAG_METHODTYPE
static final int TAG_METHODTYPEThe value of constant pool tag METHODTYPE.- See Also:
-
TAG_MODULE
static final int TAG_MODULEThe value of constant pool tag MODULE.- See Also:
-
TAG_NAMEANDTYPE
static final int TAG_NAMEANDTYPEThe value of constant pool tag NAMEANDTYPE.- See Also:
-
TAG_PACKAGE
static final int TAG_PACKAGEThe value of constant pool tag PACKAGE.- See Also:
-
TAG_STRING
static final int TAG_STRINGThe value of constant pool tag STRING.- See Also:
-
TAG_UNICODE
static final int TAG_UNICODEThe value of constant pool tag UNICODE.- See Also:
-
TAG_UTF8
static final int TAG_UTF8The value of constant pool tag UTF8.- See Also:
-
AEV_BYTE
static final int AEV_BYTEThe value of annotation element value type AEV_BYTE.- See Also:
-
AEV_CHAR
static final int AEV_CHARThe value of annotation element value type AEV_CHAR.- See Also:
-
AEV_DOUBLE
static final int AEV_DOUBLEThe value of annotation element value type AEV_DOUBLE.- See Also:
-
AEV_FLOAT
static final int AEV_FLOATThe value of annotation element value type AEV_FLOAT.- See Also:
-
AEV_INT
static final int AEV_INTThe value of annotation element value type AEV_INT.- See Also:
-
AEV_LONG
static final int AEV_LONGThe value of annotation element value type AEV_LONG.- See Also:
-
AEV_SHORT
static final int AEV_SHORTThe value of annotation element value type AEV_SHORT.- See Also:
-
AEV_BOOLEAN
static final int AEV_BOOLEANThe value of annotation element value type AEV_BOOLEAN.- See Also:
-
AEV_STRING
static final int AEV_STRINGThe value of annotation element value type AEV_STRING.- See Also:
-
AEV_ENUM
static final int AEV_ENUMThe value of annotation element value type AEV_ENUM.- See Also:
-
AEV_CLASS
static final int AEV_CLASSThe value of annotation element value type AEV_CLASS.- See Also:
-
AEV_ANNOTATION
static final int AEV_ANNOTATIONThe value of annotation element value type AEV_ANNOTATION.- See Also:
-
AEV_ARRAY
static final int AEV_ARRAYThe value of annotation element value type AEV_ARRAY.- See Also:
-
TAT_CLASS_TYPE_PARAMETER
static final int TAT_CLASS_TYPE_PARAMETERThe value of type annotation target type CLASS_TYPE_PARAMETER.- See Also:
-
TAT_METHOD_TYPE_PARAMETER
static final int TAT_METHOD_TYPE_PARAMETERThe value of type annotation target type METHOD_TYPE_PARAMETER.- See Also:
-
TAT_CLASS_EXTENDS
static final int TAT_CLASS_EXTENDSThe value of type annotation target type CLASS_EXTENDS.- See Also:
-
TAT_CLASS_TYPE_PARAMETER_BOUND
static final int TAT_CLASS_TYPE_PARAMETER_BOUNDThe value of type annotation target type CLASS_TYPE_PARAMETER_BOUND.- See Also:
-
TAT_METHOD_TYPE_PARAMETER_BOUND
static final int TAT_METHOD_TYPE_PARAMETER_BOUNDThe value of type annotation target type METHOD_TYPE_PARAMETER_BOUND.- See Also:
-
TAT_FIELD
static final int TAT_FIELDThe value of type annotation target type FIELD.- See Also:
-
TAT_METHOD_RETURN
static final int TAT_METHOD_RETURNThe value of type annotation target type METHOD_RETURN.- See Also:
-
TAT_METHOD_RECEIVER
static final int TAT_METHOD_RECEIVERThe value of type annotation target type METHOD_RECEIVER.- See Also:
-
TAT_METHOD_FORMAL_PARAMETER
static final int TAT_METHOD_FORMAL_PARAMETERThe value of type annotation target type METHOD_FORMAL_PARAMETER.- See Also:
-
TAT_THROWS
static final int TAT_THROWSThe value of type annotation target type THROWS.- See Also:
-
TAT_LOCAL_VARIABLE
static final int TAT_LOCAL_VARIABLEThe value of type annotation target type LOCAL_VARIABLE.- See Also:
-
TAT_RESOURCE_VARIABLE
static final int TAT_RESOURCE_VARIABLEThe value of type annotation target type RESOURCE_VARIABLE.- See Also:
-
TAT_EXCEPTION_PARAMETER
static final int TAT_EXCEPTION_PARAMETERThe value of type annotation target type EXCEPTION_PARAMETER.- See Also:
-
TAT_INSTANCEOF
static final int TAT_INSTANCEOFThe value of type annotation target type INSTANCEOF.- See Also:
-
TAT_NEW
static final int TAT_NEWThe value of type annotation target type NEW.- See Also:
-
TAT_CONSTRUCTOR_REFERENCE
static final int TAT_CONSTRUCTOR_REFERENCEThe value of type annotation target type CONSTRUCTOR_REFERENCE.- See Also:
-
TAT_METHOD_REFERENCE
static final int TAT_METHOD_REFERENCEThe value of type annotation target type METHOD_REFERENCE.- See Also:
-
TAT_CAST
static final int TAT_CASTThe value of type annotation target type CAST.- See Also:
-
TAT_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT
static final int TAT_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENTThe value of type annotation target type CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT.- See Also:
-
TAT_METHOD_INVOCATION_TYPE_ARGUMENT
static final int TAT_METHOD_INVOCATION_TYPE_ARGUMENTThe value of type annotation target type METHOD_INVOCATION_TYPE_ARGUMENT.- See Also:
-
TAT_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT
static final int TAT_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENTThe value of type annotation target type CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT.- See Also:
-
TAT_METHOD_REFERENCE_TYPE_ARGUMENT
static final int TAT_METHOD_REFERENCE_TYPE_ARGUMENTThe value of type annotation target type METHOD_REFERENCE_TYPE_ARGUMENT.- See Also:
-
VT_TOP
static final int VT_TOPThe value of verification type TOP.- See Also:
-
VT_INTEGER
static final int VT_INTEGERThe value of verification type INTEGER.- See Also:
-
VT_FLOAT
static final int VT_FLOATThe value of verification type FLOAT.- See Also:
-
VT_DOUBLE
static final int VT_DOUBLEThe value of verification type DOUBLE.- See Also:
-
VT_LONG
static final int VT_LONGThe value of verification type LONG.- See Also:
-
VT_NULL
static final int VT_NULLThe value of verification type NULL.- See Also:
-
VT_UNINITIALIZED_THIS
static final int VT_UNINITIALIZED_THISThe value of verification type UNINITIALIZED_THIS.- See Also:
-
VT_OBJECT
static final int VT_OBJECTThe value of verification type OBJECT.- See Also:
-
VT_UNINITIALIZED
static final int VT_UNINITIALIZEDThe value of verification type UNINITIALIZED.- See Also:
-
DEFAULT_CLASS_FLAGS
static final int DEFAULT_CLASS_FLAGSThe value of default class access flags- See Also:
-
JAVA_1_VERSION
static final int JAVA_1_VERSIONThe class major version of JAVA_1.- See Also:
-
JAVA_2_VERSION
static final int JAVA_2_VERSIONThe class major version of JAVA_2.- See Also:
-
JAVA_3_VERSION
static final int JAVA_3_VERSIONThe class major version of JAVA_3.- See Also:
-
JAVA_4_VERSION
static final int JAVA_4_VERSIONThe class major version of JAVA_4.- See Also:
-
JAVA_5_VERSION
static final int JAVA_5_VERSIONThe class major version of JAVA_5.- See Also:
-
JAVA_6_VERSION
static final int JAVA_6_VERSIONThe class major version of JAVA_6.- See Also:
-
JAVA_7_VERSION
static final int JAVA_7_VERSIONThe class major version of JAVA_7.- See Also:
-
JAVA_8_VERSION
static final int JAVA_8_VERSIONThe class major version of JAVA_8.- See Also:
-
JAVA_9_VERSION
static final int JAVA_9_VERSIONThe class major version of JAVA_9.- See Also:
-
JAVA_10_VERSION
static final int JAVA_10_VERSIONThe class major version of JAVA_10.- See Also:
-
JAVA_11_VERSION
static final int JAVA_11_VERSIONThe class major version of JAVA_11.- See Also:
-
JAVA_12_VERSION
static final int JAVA_12_VERSIONThe class major version of JAVA_12.- See Also:
-
JAVA_13_VERSION
static final int JAVA_13_VERSIONThe class major version of JAVA_13.- See Also:
-
JAVA_14_VERSION
static final int JAVA_14_VERSIONThe class major version of JAVA_14.- See Also:
-
JAVA_15_VERSION
static final int JAVA_15_VERSIONThe class major version of JAVA_15.- See Also:
-
JAVA_16_VERSION
static final int JAVA_16_VERSIONThe class major version of JAVA_16.- See Also:
-
JAVA_17_VERSION
static final int JAVA_17_VERSIONThe class major version of JAVA_17.- See Also:
-
JAVA_18_VERSION
static final int JAVA_18_VERSIONThe class major version of JAVA_18.- See Also:
-
JAVA_19_VERSION
static final int JAVA_19_VERSIONThe class major version of JAVA_19.- See Also:
-
JAVA_20_VERSION
static final int JAVA_20_VERSIONThe class major version of JAVA_20.- See Also:
-
JAVA_21_VERSION
static final int JAVA_21_VERSIONThe class major version of JAVA_21.- See Also:
-
JAVA_22_VERSION
static final int JAVA_22_VERSIONThe class major version of JAVA_22.- See Also:
-
JAVA_23_VERSION
static final int JAVA_23_VERSION67- See Also:
-
PREVIEW_MINOR_VERSION
static final int PREVIEW_MINOR_VERSIONA minor version number indicating a class uses preview features of a Java SE version since 12, for major versions 56 and above.- See Also:
-
-
Method Details
-
of
-
of
Returns a new context with options altered from the default.- Parameters:
options
- the desired processing options- Returns:
- a new context with options altered from the default
-
withOptions
Returns a copy of the context with altered options.- Parameters:
options
- the desired processing options- Returns:
- a copy of the context with altered options
-
parse
Parse a classfile into aClassModel
PREVIEW.- Parameters:
bytes
- the bytes of the classfile- Returns:
- the class model
- Throws:
IllegalArgumentException
- or its subclass if the classfile format is not supported or an incompatibility prevents parsing of the classfile
-
parse
Parse a classfile into aClassModel
PREVIEW.- Parameters:
path
- the path to the classfile- Returns:
- the class model
- Throws:
IOException
- if an I/O error occursIllegalArgumentException
- or its subclass if the classfile format is not supported or an incompatibility prevents parsing of the classfile
-
build
Build a classfile into a byte array.- Parameters:
thisClass
- the name of the class to buildhandler
- a handler that receives aClassBuilder
PREVIEW- Returns:
- the classfile bytes
- Throws:
IllegalArgumentException
- ifthisClass
represents a primitive type
-
build
byte[] build(ClassEntryPREVIEW thisClassEntry, ConstantPoolBuilderPREVIEW constantPool, Consumer<? super ClassBuilderPREVIEW> handler) Build a classfile into a byte array using the provided constant pool builder.- Parameters:
thisClassEntry
- the name of the class to buildconstantPool
- the constant pool builderhandler
- a handler that receives aClassBuilder
PREVIEW- Returns:
- the classfile bytes
-
buildTo
default void buildTo(Path path, ClassDesc thisClass, Consumer<ClassBuilderPREVIEW> handler) throws IOException Build a classfile into a file.- Parameters:
path
- the path to the file to writethisClass
- the name of the class to buildhandler
- a handler that receives aClassBuilder
PREVIEW- Throws:
IOException
- if an I/O error occurs
-
buildTo
default void buildTo(Path path, ClassEntryPREVIEW thisClassEntry, ConstantPoolBuilderPREVIEW constantPool, Consumer<? super ClassBuilderPREVIEW> handler) throws IOException Build a classfile into a file using the provided constant pool builder.- Parameters:
path
- the path to the file to writethisClassEntry
- the name of the class to buildconstantPool
- the constant pool builderhandler
- a handler that receives aClassBuilder
PREVIEW- Throws:
IOException
- if an I/O error occurs
-
buildModule
Build a module descriptor into a byte array.- Parameters:
moduleAttribute
- theModule
attribute- Returns:
- the classfile bytes
-
buildModule
default byte[] buildModule(ModuleAttributePREVIEW moduleAttribute, Consumer<? super ClassBuilderPREVIEW> handler) Build a module descriptor into a byte array.- Parameters:
moduleAttribute
- theModule
attributehandler
- a handler that receives aClassBuilder
PREVIEW- Returns:
- the classfile bytes
-
buildModuleTo
Build a module descriptor into a file.- Parameters:
path
- the file to writemoduleAttribute
- theModule
attribute- Throws:
IOException
- if an I/O error occurs
-
buildModuleTo
default void buildModuleTo(Path path, ModuleAttributePREVIEW moduleAttribute, Consumer<? super ClassBuilderPREVIEW> handler) throws IOException Build a module descriptor into a file.- Parameters:
path
- the file to writemoduleAttribute
- theModule
attributehandler
- a handler that receives aClassBuilder
PREVIEW- Throws:
IOException
- if an I/O error occurs
-
transform
Transform one classfile into a new classfile with the aid of aClassTransform
PREVIEW. The transform will receive each element of this class, as well as aClassBuilder
PREVIEW for building the new class. The transform is free to preserve, remove, or replace elements as it sees fit.- Implementation Note:
- This method behaves as if:
this.build(model.thisClass(), ConstantPoolBuilder.of(model), b -> b.transform(model, transform));
- Parameters:
model
- the class model to transformtransform
- the transform- Returns:
- the bytes of the new class
-
transform
default byte[] transform(ClassModelPREVIEW model, ClassDesc newClassName, ClassTransformPREVIEW transform) Transform one classfile into a new classfile with the aid of aClassTransform
PREVIEW. The transform will receive each element of this class, as well as aClassBuilder
PREVIEW for building the new class. The transform is free to preserve, remove, or replace elements as it sees fit.- Parameters:
model
- the class model to transformnewClassName
- new class nametransform
- the transform- Returns:
- the bytes of the new class
-
transform
byte[] transform(ClassModelPREVIEW model, ClassEntryPREVIEW newClassName, ClassTransformPREVIEW transform) Transform one classfile into a new classfile with the aid of aClassTransform
PREVIEW. The transform will receive each element of this class, as well as aClassBuilder
PREVIEW for building the new class. The transform is free to preserve, remove, or replace elements as it sees fit.- Implementation Note:
- This method behaves as if:
this.build(newClassName, ConstantPoolBuilder.of(model), b -> b.transform(model, transform));
- Parameters:
model
- the class model to transformnewClassName
- new class nametransform
- the transform- Returns:
- the bytes of the new class
-
verify
Verify a classfile. Any verification errors found will be returned.- Parameters:
model
- the class model to verify- Returns:
- a list of verification errors, or an empty list if no errors are found
-
verify
Verify a classfile. Any verification errors found will be returned.- Parameters:
bytes
- the classfile bytes to verify- Returns:
- a list of verification errors, or an empty list if no errors are found
-
verify
Verify a classfile. Any verification errors found will be returned.- Parameters:
path
- the classfile path to verify- Returns:
- a list of verification errors, or an empty list if no errors are found
- Throws:
IOException
- if an I/O error occurs
-
latestMajorVersion
static int latestMajorVersion()Returns the latest major Java version.- Returns:
- the latest major Java version
-
latestMinorVersion
static int latestMinorVersion()Returns the latest minor Java version.- Returns:
- the latest minor Java version
-
ClassFile
when preview features are enabled.