Interface ClassFile


public sealed interface ClassFile
ClassFile is a preview API of the Java platform.
Programs can only use ClassFile when preview features are enabled.
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 Link icon

    Nested Classes
    Modifier and Type
    Interface
    Description
    static 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 Link icon

    Fields
    Modifier and Type
    Field
    Description
    static 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 ASSIGNMENT CharacterRangeInfoPREVIEW kind.
    static final int
    The value of BLOCK CharacterRangeInfoPREVIEW kind.
    static final int
    The value of BRANCH_FALSE CharacterRangeInfoPREVIEW kind.
    static final int
    The value of BRANCH_TRUE CharacterRangeInfoPREVIEW kind.
    static final int
    The value of CREATE CharacterRangeInfoPREVIEW kind.
    static final int
    The value of FLOW_CONTROLLER CharacterRangeInfoPREVIEW kind.
    static final int
    The value of FLOW_TARGET CharacterRangeInfoPREVIEW kind.
    static final int
    The value of INVOKE CharacterRangeInfoPREVIEW kind.
    static final int
    The value of STATEMENT CharacterRangeInfoPREVIEW 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 flags
    static 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
    67
    static 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
    0xCAFEBABE
    static 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 Link icon

    Modifier and Type
    Method
    Description
    byte[]
    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[]
    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
    buildTo(Path path, ClassDesc thisClass, Consumer<ClassBuilderPREVIEW> handler)
    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.
    Returns a new context with options altered from the default.
    parse(byte[] bytes)
    Parse a classfile into a ClassModelPREVIEW.
    parse(Path path)
    Parse a classfile into a ClassModelPREVIEW.
    default byte[]
    Transform one classfile into a new classfile with the aid of a ClassTransformPREVIEW.
    byte[]
    Transform one classfile into a new classfile with the aid of a ClassTransformPREVIEW.
    default byte[]
    transform(ClassModelPREVIEW model, ClassDesc newClassName, ClassTransformPREVIEW transform)
    Transform one classfile into a new classfile with the aid of a ClassTransformPREVIEW.
    verify(byte[] bytes)
    Verify a classfile.
    Verify a classfile.
    default List<VerifyError>
    verify(Path path)
    Verify a classfile.
    Returns a copy of the context with altered options.
  • Field Details Link icon

    • MAGIC_NUMBER Link icon

      static final int MAGIC_NUMBER
      0xCAFEBABE
      See Also:
    • NOP Link icon

      static final int NOP
      The integer value used to encode the NOP instruction.
      See Also:
    • ACONST_NULL Link icon

      static final int ACONST_NULL
      The integer value used to encode the ACONST_NULL instruction.
      See Also:
    • ICONST_M1 Link icon

      static final int ICONST_M1
      The integer value used to encode the ICONST_M1 instruction.
      See Also:
    • ICONST_0 Link icon

      static final int ICONST_0
      The integer value used to encode the ICONST_0 instruction.
      See Also:
    • ICONST_1 Link icon

      static final int ICONST_1
      The integer value used to encode the ICONST_1 instruction.
      See Also:
    • ICONST_2 Link icon

      static final int ICONST_2
      The integer value used to encode the ICONST_2 instruction.
      See Also:
    • ICONST_3 Link icon

      static final int ICONST_3
      The integer value used to encode the ICONST_3 instruction.
      See Also:
    • ICONST_4 Link icon

      static final int ICONST_4
      The integer value used to encode the ICONST_4 instruction.
      See Also:
    • ICONST_5 Link icon

      static final int ICONST_5
      The integer value used to encode the ICONST_5 instruction.
      See Also:
    • LCONST_0 Link icon

      static final int LCONST_0
      The integer value used to encode the LCONST_0 instruction.
      See Also:
    • LCONST_1 Link icon

      static final int LCONST_1
      The integer value used to encode the LCONST_1 instruction.
      See Also:
    • FCONST_0 Link icon

      static final int FCONST_0
      The integer value used to encode the FCONST_0 instruction.
      See Also:
    • FCONST_1 Link icon

      static final int FCONST_1
      The integer value used to encode the FCONST_1 instruction.
      See Also:
    • FCONST_2 Link icon

      static final int FCONST_2
      The integer value used to encode the FCONST_2 instruction.
      See Also:
    • DCONST_0 Link icon

      static final int DCONST_0
      The integer value used to encode the DCONST_0 instruction.
      See Also:
    • DCONST_1 Link icon

      static final int DCONST_1
      The integer value used to encode the DCONST_1 instruction.
      See Also:
    • BIPUSH Link icon

      static final int BIPUSH
      The integer value used to encode the BIPUSH instruction.
      See Also:
    • SIPUSH Link icon

      static final int SIPUSH
      The integer value used to encode the SIPUSH instruction.
      See Also:
    • LDC Link icon

      static final int LDC
      The integer value used to encode the LDC instruction.
      See Also:
    • LDC_W Link icon

      static final int LDC_W
      The integer value used to encode the LDC_W instruction.
      See Also:
    • LDC2_W Link icon

      static final int LDC2_W
      The integer value used to encode the LDC2_W instruction.
      See Also:
    • ILOAD Link icon

      static final int ILOAD
      The integer value used to encode the ILOAD instruction.
      See Also:
    • LLOAD Link icon

      static final int LLOAD
      The integer value used to encode the LLOAD instruction.
      See Also:
    • FLOAD Link icon

      static final int FLOAD
      The integer value used to encode the FLOAD instruction.
      See Also:
    • DLOAD Link icon

      static final int DLOAD
      The integer value used to encode the DLOAD instruction.
      See Also:
    • ALOAD Link icon

      static final int ALOAD
      The integer value used to encode the ALOAD instruction.
      See Also:
    • ILOAD_0 Link icon

      static final int ILOAD_0
      The integer value used to encode the ILOAD_0 instruction.
      See Also:
    • ILOAD_1 Link icon

      static final int ILOAD_1
      The integer value used to encode the ILOAD_1 instruction.
      See Also:
    • ILOAD_2 Link icon

      static final int ILOAD_2
      The integer value used to encode the ILOAD_2 instruction.
      See Also:
    • ILOAD_3 Link icon

      static final int ILOAD_3
      The integer value used to encode the ILOAD_3 instruction.
      See Also:
    • LLOAD_0 Link icon

      static final int LLOAD_0
      The integer value used to encode the LLOAD_0 instruction.
      See Also:
    • LLOAD_1 Link icon

      static final int LLOAD_1
      The integer value used to encode the LLOAD_1 instruction.
      See Also:
    • LLOAD_2 Link icon

      static final int LLOAD_2
      The integer value used to encode the LLOAD_2 instruction.
      See Also:
    • LLOAD_3 Link icon

      static final int LLOAD_3
      The integer value used to encode the LLOAD_3 instruction.
      See Also:
    • FLOAD_0 Link icon

      static final int FLOAD_0
      The integer value used to encode the FLOAD_0 instruction.
      See Also:
    • FLOAD_1 Link icon

      static final int FLOAD_1
      The integer value used to encode the FLOAD_1 instruction.
      See Also:
    • FLOAD_2 Link icon

      static final int FLOAD_2
      The integer value used to encode the FLOAD_2 instruction.
      See Also:
    • FLOAD_3 Link icon

      static final int FLOAD_3
      The integer value used to encode the FLOAD_3 instruction.
      See Also:
    • DLOAD_0 Link icon

      static final int DLOAD_0
      The integer value used to encode the DLOAD_0 instruction.
      See Also:
    • DLOAD_1 Link icon

      static final int DLOAD_1
      The integer value used to encode the DLOAD_1 instruction.
      See Also:
    • DLOAD_2 Link icon

      static final int DLOAD_2
      The integer value used to encode the DLOAD_2 instruction.
      See Also:
    • DLOAD_3 Link icon

      static final int DLOAD_3
      The integer value used to encode the DLOAD_3 instruction.
      See Also:
    • ALOAD_0 Link icon

      static final int ALOAD_0
      The integer value used to encode the ALOAD_0 instruction.
      See Also:
    • ALOAD_1 Link icon

      static final int ALOAD_1
      The integer value used to encode the ALOAD_1 instruction.
      See Also:
    • ALOAD_2 Link icon

      static final int ALOAD_2
      The integer value used to encode the ALOAD_2 instruction.
      See Also:
    • ALOAD_3 Link icon

      static final int ALOAD_3
      The integer value used to encode the ALOAD_3 instruction.
      See Also:
    • IALOAD Link icon

      static final int IALOAD
      The integer value used to encode the IALOAD instruction.
      See Also:
    • LALOAD Link icon

      static final int LALOAD
      The integer value used to encode the LALOAD instruction.
      See Also:
    • FALOAD Link icon

      static final int FALOAD
      The integer value used to encode the FALOAD instruction.
      See Also:
    • DALOAD Link icon

      static final int DALOAD
      The integer value used to encode the DALOAD instruction.
      See Also:
    • AALOAD Link icon

      static final int AALOAD
      The integer value used to encode the AALOAD instruction.
      See Also:
    • BALOAD Link icon

      static final int BALOAD
      The integer value used to encode the BALOAD instruction.
      See Also:
    • CALOAD Link icon

      static final int CALOAD
      The integer value used to encode the CALOAD instruction.
      See Also:
    • SALOAD Link icon

      static final int SALOAD
      The integer value used to encode the SALOAD instruction.
      See Also:
    • ISTORE Link icon

      static final int ISTORE
      The integer value used to encode the ISTORE instruction.
      See Also:
    • LSTORE Link icon

      static final int LSTORE
      The integer value used to encode the LSTORE instruction.
      See Also:
    • FSTORE Link icon

      static final int FSTORE
      The integer value used to encode the FSTORE instruction.
      See Also:
    • DSTORE Link icon

      static final int DSTORE
      The integer value used to encode the DSTORE instruction.
      See Also:
    • ASTORE Link icon

      static final int ASTORE
      The integer value used to encode the ASTORE instruction.
      See Also:
    • ISTORE_0 Link icon

      static final int ISTORE_0
      The integer value used to encode the ISTORE_0 instruction.
      See Also:
    • ISTORE_1 Link icon

      static final int ISTORE_1
      The integer value used to encode the ISTORE_1 instruction.
      See Also:
    • ISTORE_2 Link icon

      static final int ISTORE_2
      The integer value used to encode the ISTORE_2 instruction.
      See Also:
    • ISTORE_3 Link icon

      static final int ISTORE_3
      The integer value used to encode the ISTORE_3 instruction.
      See Also:
    • LSTORE_0 Link icon

      static final int LSTORE_0
      The integer value used to encode the LSTORE_0 instruction.
      See Also:
    • LSTORE_1 Link icon

      static final int LSTORE_1
      The integer value used to encode the LSTORE_1 instruction.
      See Also:
    • LSTORE_2 Link icon

      static final int LSTORE_2
      The integer value used to encode the LSTORE_2 instruction.
      See Also:
    • LSTORE_3 Link icon

      static final int LSTORE_3
      The integer value used to encode the LSTORE_3 instruction.
      See Also:
    • FSTORE_0 Link icon

      static final int FSTORE_0
      The integer value used to encode the FSTORE_0 instruction.
      See Also:
    • FSTORE_1 Link icon

      static final int FSTORE_1
      The integer value used to encode the FSTORE_1 instruction.
      See Also:
    • FSTORE_2 Link icon

      static final int FSTORE_2
      The integer value used to encode the FSTORE_2 instruction.
      See Also:
    • FSTORE_3 Link icon

      static final int FSTORE_3
      The integer value used to encode the FSTORE_3 instruction.
      See Also:
    • DSTORE_0 Link icon

      static final int DSTORE_0
      The integer value used to encode the DSTORE_0 instruction.
      See Also:
    • DSTORE_1 Link icon

      static final int DSTORE_1
      The integer value used to encode the DSTORE_1 instruction.
      See Also:
    • DSTORE_2 Link icon

      static final int DSTORE_2
      The integer value used to encode the DSTORE_2 instruction.
      See Also:
    • DSTORE_3 Link icon

      static final int DSTORE_3
      The integer value used to encode the DSTORE_3 instruction.
      See Also:
    • ASTORE_0 Link icon

      static final int ASTORE_0
      The integer value used to encode the ASTORE_0 instruction.
      See Also:
    • ASTORE_1 Link icon

      static final int ASTORE_1
      The integer value used to encode the ASTORE_1 instruction.
      See Also:
    • ASTORE_2 Link icon

      static final int ASTORE_2
      The integer value used to encode the ASTORE_2 instruction.
      See Also:
    • ASTORE_3 Link icon

      static final int ASTORE_3
      The integer value used to encode the ASTORE_3 instruction.
      See Also:
    • IASTORE Link icon

      static final int IASTORE
      The integer value used to encode the IASTORE instruction.
      See Also:
    • LASTORE Link icon

      static final int LASTORE
      The integer value used to encode the LASTORE instruction.
      See Also:
    • FASTORE Link icon

      static final int FASTORE
      The integer value used to encode the FASTORE instruction.
      See Also:
    • DASTORE Link icon

      static final int DASTORE
      The integer value used to encode the DASTORE instruction.
      See Also:
    • AASTORE Link icon

      static final int AASTORE
      The integer value used to encode the AASTORE instruction.
      See Also:
    • BASTORE Link icon

      static final int BASTORE
      The integer value used to encode the BASTORE instruction.
      See Also:
    • CASTORE Link icon

      static final int CASTORE
      The integer value used to encode the CASTORE instruction.
      See Also:
    • SASTORE Link icon

      static final int SASTORE
      The integer value used to encode the SASTORE instruction.
      See Also:
    • POP Link icon

      static final int POP
      The integer value used to encode the POP instruction.
      See Also:
    • POP2 Link icon

      static final int POP2
      The integer value used to encode the POP2 instruction.
      See Also:
    • DUP Link icon

      static final int DUP
      The integer value used to encode the DUP instruction.
      See Also:
    • DUP_X1 Link icon

      static final int DUP_X1
      The integer value used to encode the DUP_X1 instruction.
      See Also:
    • DUP_X2 Link icon

      static final int DUP_X2
      The integer value used to encode the DUP_X2 instruction.
      See Also:
    • DUP2 Link icon

      static final int DUP2
      The integer value used to encode the DUP2 instruction.
      See Also:
    • DUP2_X1 Link icon

      static final int DUP2_X1
      The integer value used to encode the DUP2_X1 instruction.
      See Also:
    • DUP2_X2 Link icon

      static final int DUP2_X2
      The integer value used to encode the DUP2_X2 instruction.
      See Also:
    • SWAP Link icon

      static final int SWAP
      The integer value used to encode the SWAP instruction.
      See Also:
    • IADD Link icon

      static final int IADD
      The integer value used to encode the IADD instruction.
      See Also:
    • LADD Link icon

      static final int LADD
      The integer value used to encode the LADD instruction.
      See Also:
    • FADD Link icon

      static final int FADD
      The integer value used to encode the FADD instruction.
      See Also:
    • DADD Link icon

      static final int DADD
      The integer value used to encode the DADD instruction.
      See Also:
    • ISUB Link icon

      static final int ISUB
      The integer value used to encode the ISUB instruction.
      See Also:
    • LSUB Link icon

      static final int LSUB
      The integer value used to encode the LSUB instruction.
      See Also:
    • FSUB Link icon

      static final int FSUB
      The integer value used to encode the FSUB instruction.
      See Also:
    • DSUB Link icon

      static final int DSUB
      The integer value used to encode the DSUB instruction.
      See Also:
    • IMUL Link icon

      static final int IMUL
      The integer value used to encode the IMUL instruction.
      See Also:
    • LMUL Link icon

      static final int LMUL
      The integer value used to encode the LMUL instruction.
      See Also:
    • FMUL Link icon

      static final int FMUL
      The integer value used to encode the FMUL instruction.
      See Also:
    • DMUL Link icon

      static final int DMUL
      The integer value used to encode the DMUL instruction.
      See Also:
    • IDIV Link icon

      static final int IDIV
      The integer value used to encode the IDIV instruction.
      See Also:
    • LDIV Link icon

      static final int LDIV
      The integer value used to encode the LDIV instruction.
      See Also:
    • FDIV Link icon

      static final int FDIV
      The integer value used to encode the FDIV instruction.
      See Also:
    • DDIV Link icon

      static final int DDIV
      The integer value used to encode the DDIV instruction.
      See Also:
    • IREM Link icon

      static final int IREM
      The integer value used to encode the IREM instruction.
      See Also:
    • LREM Link icon

      static final int LREM
      The integer value used to encode the LREM instruction.
      See Also:
    • FREM Link icon

      static final int FREM
      The integer value used to encode the FREM instruction.
      See Also:
    • DREM Link icon

      static final int DREM
      The integer value used to encode the DREM instruction.
      See Also:
    • INEG Link icon

      static final int INEG
      The integer value used to encode the INEG instruction.
      See Also:
    • LNEG Link icon

      static final int LNEG
      The integer value used to encode the LNEG instruction.
      See Also:
    • FNEG Link icon

      static final int FNEG
      The integer value used to encode the FNEG instruction.
      See Also:
    • DNEG Link icon

      static final int DNEG
      The integer value used to encode the DNEG instruction.
      See Also:
    • ISHL Link icon

      static final int ISHL
      The integer value used to encode the ISHL instruction.
      See Also:
    • LSHL Link icon

      static final int LSHL
      The integer value used to encode the LSHL instruction.
      See Also:
    • ISHR Link icon

      static final int ISHR
      The integer value used to encode the ISHR instruction.
      See Also:
    • LSHR Link icon

      static final int LSHR
      The integer value used to encode the LSHR instruction.
      See Also:
    • IUSHR Link icon

      static final int IUSHR
      The integer value used to encode the IUSHR instruction.
      See Also:
    • LUSHR Link icon

      static final int LUSHR
      The integer value used to encode the LUSHR instruction.
      See Also:
    • IAND Link icon

      static final int IAND
      The integer value used to encode the IAND instruction.
      See Also:
    • LAND Link icon

      static final int LAND
      The integer value used to encode the LAND instruction.
      See Also:
    • IOR Link icon

      static final int IOR
      The integer value used to encode the IOR instruction.
      See Also:
    • LOR Link icon

      static final int LOR
      The integer value used to encode the LOR instruction.
      See Also:
    • IXOR Link icon

      static final int IXOR
      The integer value used to encode the IXOR instruction.
      See Also:
    • LXOR Link icon

      static final int LXOR
      The integer value used to encode the LXOR instruction.
      See Also:
    • IINC Link icon

      static final int IINC
      The integer value used to encode the IINC instruction.
      See Also:
    • I2L Link icon

      static final int I2L
      The integer value used to encode the I2L instruction.
      See Also:
    • I2F Link icon

      static final int I2F
      The integer value used to encode the I2F instruction.
      See Also:
    • I2D Link icon

      static final int I2D
      The integer value used to encode the I2D instruction.
      See Also:
    • L2I Link icon

      static final int L2I
      The integer value used to encode the L2I instruction.
      See Also:
    • L2F Link icon

      static final int L2F
      The integer value used to encode the L2F instruction.
      See Also:
    • L2D Link icon

      static final int L2D
      The integer value used to encode the L2D instruction.
      See Also:
    • F2I Link icon

      static final int F2I
      The integer value used to encode the F2I instruction.
      See Also:
    • F2L Link icon

      static final int F2L
      The integer value used to encode the F2L instruction.
      See Also:
    • F2D Link icon

      static final int F2D
      The integer value used to encode the F2D instruction.
      See Also:
    • D2I Link icon

      static final int D2I
      The integer value used to encode the D2I instruction.
      See Also:
    • D2L Link icon

      static final int D2L
      The integer value used to encode the D2L instruction.
      See Also:
    • D2F Link icon

      static final int D2F
      The integer value used to encode the D2F instruction.
      See Also:
    • I2B Link icon

      static final int I2B
      The integer value used to encode the I2B instruction.
      See Also:
    • I2C Link icon

      static final int I2C
      The integer value used to encode the I2C instruction.
      See Also:
    • I2S Link icon

      static final int I2S
      The integer value used to encode the I2S instruction.
      See Also:
    • LCMP Link icon

      static final int LCMP
      The integer value used to encode the LCMP instruction.
      See Also:
    • FCMPL Link icon

      static final int FCMPL
      The integer value used to encode the FCMPL instruction.
      See Also:
    • FCMPG Link icon

      static final int FCMPG
      The integer value used to encode the FCMPG instruction.
      See Also:
    • DCMPL Link icon

      static final int DCMPL
      The integer value used to encode the DCMPL instruction.
      See Also:
    • DCMPG Link icon

      static final int DCMPG
      The integer value used to encode the DCMPG instruction.
      See Also:
    • IFEQ Link icon

      static final int IFEQ
      The integer value used to encode the IFEQ instruction.
      See Also:
    • IFNE Link icon

      static final int IFNE
      The integer value used to encode the IFNE instruction.
      See Also:
    • IFLT Link icon

      static final int IFLT
      The integer value used to encode the IFLT instruction.
      See Also:
    • IFGE Link icon

      static final int IFGE
      The integer value used to encode the IFGE instruction.
      See Also:
    • IFGT Link icon

      static final int IFGT
      The integer value used to encode the IFGT instruction.
      See Also:
    • IFLE Link icon

      static final int IFLE
      The integer value used to encode the IFLE instruction.
      See Also:
    • IF_ICMPEQ Link icon

      static final int IF_ICMPEQ
      The integer value used to encode the IF_ICMPEQ instruction.
      See Also:
    • IF_ICMPNE Link icon

      static final int IF_ICMPNE
      The integer value used to encode the IF_ICMPNE instruction.
      See Also:
    • IF_ICMPLT Link icon

      static final int IF_ICMPLT
      The integer value used to encode the IF_ICMPLT instruction.
      See Also:
    • IF_ICMPGE Link icon

      static final int IF_ICMPGE
      The integer value used to encode the IF_ICMPGE instruction.
      See Also:
    • IF_ICMPGT Link icon

      static final int IF_ICMPGT
      The integer value used to encode the IF_ICMPGT instruction.
      See Also:
    • IF_ICMPLE Link icon

      static final int IF_ICMPLE
      The integer value used to encode the IF_ICMPLE instruction.
      See Also:
    • IF_ACMPEQ Link icon

      static final int IF_ACMPEQ
      The integer value used to encode the IF_ACMPEQ instruction.
      See Also:
    • IF_ACMPNE Link icon

      static final int IF_ACMPNE
      The integer value used to encode the IF_ACMPNE instruction.
      See Also:
    • GOTO Link icon

      static final int GOTO
      The integer value used to encode the GOTO instruction.
      See Also:
    • JSR Link icon

      static final int JSR
      The integer value used to encode the JSR instruction.
      See Also:
    • RET Link icon

      static final int RET
      The integer value used to encode the RET instruction.
      See Also:
    • TABLESWITCH Link icon

      static final int TABLESWITCH
      The integer value used to encode the TABLESWITCH instruction.
      See Also:
    • LOOKUPSWITCH Link icon

      static final int LOOKUPSWITCH
      The integer value used to encode the LOOKUPSWITCH instruction.
      See Also:
    • IRETURN Link icon

      static final int IRETURN
      The integer value used to encode the IRETURN instruction.
      See Also:
    • LRETURN Link icon

      static final int LRETURN
      The integer value used to encode the LRETURN instruction.
      See Also:
    • FRETURN Link icon

      static final int FRETURN
      The integer value used to encode the FRETURN instruction.
      See Also:
    • DRETURN Link icon

      static final int DRETURN
      The integer value used to encode the DRETURN instruction.
      See Also:
    • ARETURN Link icon

      static final int ARETURN
      The integer value used to encode the ARETURN instruction.
      See Also:
    • RETURN Link icon

      static final int RETURN
      The integer value used to encode the RETURN instruction.
      See Also:
    • GETSTATIC Link icon

      static final int GETSTATIC
      The integer value used to encode the GETSTATIC instruction.
      See Also:
    • PUTSTATIC Link icon

      static final int PUTSTATIC
      The integer value used to encode the PUTSTATIC instruction.
      See Also:
    • GETFIELD Link icon

      static final int GETFIELD
      The integer value used to encode the GETFIELD instruction.
      See Also:
    • PUTFIELD Link icon

      static final int PUTFIELD
      The integer value used to encode the PUTFIELD instruction.
      See Also:
    • INVOKEVIRTUAL Link icon

      static final int INVOKEVIRTUAL
      The integer value used to encode the INVOKEVIRTUAL instruction.
      See Also:
    • INVOKESPECIAL Link icon

      static final int INVOKESPECIAL
      The integer value used to encode the INVOKESPECIAL instruction.
      See Also:
    • INVOKESTATIC Link icon

      static final int INVOKESTATIC
      The integer value used to encode the INVOKESTATIC instruction.
      See Also:
    • INVOKEINTERFACE Link icon

      static final int INVOKEINTERFACE
      The integer value used to encode the INVOKEINTERFACE instruction.
      See Also:
    • INVOKEDYNAMIC Link icon

      static final int INVOKEDYNAMIC
      The integer value used to encode the INVOKEDYNAMIC instruction.
      See Also:
    • NEW Link icon

      static final int NEW
      The integer value used to encode the NEW instruction.
      See Also:
    • NEWARRAY Link icon

      static final int NEWARRAY
      The integer value used to encode the NEWARRAY instruction.
      See Also:
    • ANEWARRAY Link icon

      static final int ANEWARRAY
      The integer value used to encode the ANEWARRAY instruction.
      See Also:
    • ARRAYLENGTH Link icon

      static final int ARRAYLENGTH
      The integer value used to encode the ARRAYLENGTH instruction.
      See Also:
    • ATHROW Link icon

      static final int ATHROW
      The integer value used to encode the ATHROW instruction.
      See Also:
    • CHECKCAST Link icon

      static final int CHECKCAST
      The integer value used to encode the CHECKCAST instruction.
      See Also:
    • INSTANCEOF Link icon

      static final int INSTANCEOF
      The integer value used to encode the INSTANCEOF instruction.
      See Also:
    • MONITORENTER Link icon

      static final int MONITORENTER
      The integer value used to encode the MONITORENTER instruction.
      See Also:
    • MONITOREXIT Link icon

      static final int MONITOREXIT
      The integer value used to encode the MONITOREXIT instruction.
      See Also:
    • WIDE Link icon

      static final int WIDE
      The integer value used to encode the WIDE instruction.
      See Also:
    • MULTIANEWARRAY Link icon

      static final int MULTIANEWARRAY
      The integer value used to encode the MULTIANEWARRAY instruction.
      See Also:
    • IFNULL Link icon

      static final int IFNULL
      The integer value used to encode the IFNULL instruction.
      See Also:
    • IFNONNULL Link icon

      static final int IFNONNULL
      The integer value used to encode the IFNONNULL instruction.
      See Also:
    • GOTO_W Link icon

      static final int GOTO_W
      The integer value used to encode the GOTO_W instruction.
      See Also:
    • JSR_W Link icon

      static final int JSR_W
      The integer value used to encode the JSR_W instruction.
      See Also:
    • ACC_PUBLIC Link icon

      static final int ACC_PUBLIC
      The value of PUBLIC access and property modifier.
      See Also:
    • ACC_PROTECTED Link icon

      static final int ACC_PROTECTED
      The value of PROTECTED access and property modifier.
      See Also:
    • ACC_PRIVATE Link icon

      static final int ACC_PRIVATE
      The value of PRIVATE access and property modifier.
      See Also:
    • ACC_INTERFACE Link icon

      static final int ACC_INTERFACE
      The value of INTERFACE access and property modifier.
      See Also:
    • ACC_ENUM Link icon

      static final int ACC_ENUM
      The value of ENUM access and property modifier.
      See Also:
    • ACC_ANNOTATION Link icon

      static final int ACC_ANNOTATION
      The value of ANNOTATION access and property modifier.
      See Also:
    • ACC_SUPER Link icon

      static final int ACC_SUPER
      The value of SUPER access and property modifier.
      See Also:
    • ACC_IDENTITY Link icon

      static final int ACC_IDENTITY
      The value of IDENTITY access and property modifier.
      See Also:
    • ACC_ABSTRACT Link icon

      static final int ACC_ABSTRACT
      The value of ABSTRACT access and property modifier.
      See Also:
    • ACC_VOLATILE Link icon

      static final int ACC_VOLATILE
      The value of VOLATILE access and property modifier.
      See Also:
    • ACC_TRANSIENT Link icon

      static final int ACC_TRANSIENT
      The value of TRANSIENT access and property modifier.
      See Also:
    • ACC_SYNTHETIC Link icon

      static final int ACC_SYNTHETIC
      The value of SYNTHETIC access and property modifier.
      See Also:
    • ACC_STATIC Link icon

      static final int ACC_STATIC
      The value of STATIC access and property modifier.
      See Also:
    • ACC_FINAL Link icon

      static final int ACC_FINAL
      The value of FINAL access and property modifier.
      See Also:
    • ACC_SYNCHRONIZED Link icon

      static final int ACC_SYNCHRONIZED
      The value of SYNCHRONIZED access and property modifier.
      See Also:
    • ACC_BRIDGE Link icon

      static final int ACC_BRIDGE
      The value of BRIDGE access and property modifier.
      See Also:
    • ACC_VARARGS Link icon

      static final int ACC_VARARGS
      The value of VARARGS access and property modifier.
      See Also:
    • ACC_NATIVE Link icon

      static final int ACC_NATIVE
      The value of NATIVE access and property modifier.
      See Also:
    • ACC_STRICT Link icon

      static final int ACC_STRICT
      The value of STRICT access and property modifier.
      See Also:
    • ACC_MODULE Link icon

      static final int ACC_MODULE
      The value of MODULE access and property modifier.
      See Also:
    • ACC_OPEN Link icon

      static final int ACC_OPEN
      The value of OPEN access and property modifier.
      See Also:
    • ACC_MANDATED Link icon

      static final int ACC_MANDATED
      The value of MANDATED access and property modifier.
      See Also:
    • ACC_TRANSITIVE Link icon

      static final int ACC_TRANSITIVE
      The value of TRANSITIVE access and property modifier.
      See Also:
    • ACC_STATIC_PHASE Link icon

      static final int ACC_STATIC_PHASE
      The value of STATIC_PHASE access and property modifier.
      See Also:
    • CRT_STATEMENT Link icon

      static final int CRT_STATEMENT
      The value of STATEMENT CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_BLOCK Link icon

      static final int CRT_BLOCK
      The value of BLOCK CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_ASSIGNMENT Link icon

      static final int CRT_ASSIGNMENT
      The value of ASSIGNMENT CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_FLOW_CONTROLLER Link icon

      static final int CRT_FLOW_CONTROLLER
      The value of FLOW_CONTROLLER CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_FLOW_TARGET Link icon

      static final int CRT_FLOW_TARGET
      The value of FLOW_TARGET CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_INVOKE Link icon

      static final int CRT_INVOKE
      The value of INVOKE CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_CREATE Link icon

      static final int CRT_CREATE
      The value of CREATE CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_BRANCH_TRUE Link icon

      static final int CRT_BRANCH_TRUE
      The value of BRANCH_TRUE CharacterRangeInfoPREVIEW kind.
      See Also:
    • CRT_BRANCH_FALSE Link icon

      static final int CRT_BRANCH_FALSE
      The value of BRANCH_FALSE CharacterRangeInfoPREVIEW kind.
      See Also:
    • TAG_CLASS Link icon

      static final int TAG_CLASS
      The value of constant pool tag CLASS.
      See Also:
    • TAG_CONSTANTDYNAMIC Link icon

      static final int TAG_CONSTANTDYNAMIC
      The value of constant pool tag CONSTANTDYNAMIC.
      See Also:
    • TAG_DOUBLE Link icon

      static final int TAG_DOUBLE
      The value of constant pool tag DOUBLE.
      See Also:
    • TAG_FIELDREF Link icon

      static final int TAG_FIELDREF
      The value of constant pool tag FIELDREF.
      See Also:
    • TAG_FLOAT Link icon

      static final int TAG_FLOAT
      The value of constant pool tag FLOAT.
      See Also:
    • TAG_INTEGER Link icon

      static final int TAG_INTEGER
      The value of constant pool tag INTEGER.
      See Also:
    • TAG_INTERFACEMETHODREF Link icon

      static final int TAG_INTERFACEMETHODREF
      The value of constant pool tag INTERFACEMETHODREF.
      See Also:
    • TAG_INVOKEDYNAMIC Link icon

      static final int TAG_INVOKEDYNAMIC
      The value of constant pool tag INVOKEDYNAMIC.
      See Also:
    • TAG_LONG Link icon

      static final int TAG_LONG
      The value of constant pool tag LONG.
      See Also:
    • TAG_METHODHANDLE Link icon

      static final int TAG_METHODHANDLE
      The value of constant pool tag METHODHANDLE.
      See Also:
    • TAG_METHODREF Link icon

      static final int TAG_METHODREF
      The value of constant pool tag METHODREF.
      See Also:
    • TAG_METHODTYPE Link icon

      static final int TAG_METHODTYPE
      The value of constant pool tag METHODTYPE.
      See Also:
    • TAG_MODULE Link icon

      static final int TAG_MODULE
      The value of constant pool tag MODULE.
      See Also:
    • TAG_NAMEANDTYPE Link icon

      static final int TAG_NAMEANDTYPE
      The value of constant pool tag NAMEANDTYPE.
      See Also:
    • TAG_PACKAGE Link icon

      static final int TAG_PACKAGE
      The value of constant pool tag PACKAGE.
      See Also:
    • TAG_STRING Link icon

      static final int TAG_STRING
      The value of constant pool tag STRING.
      See Also:
    • TAG_UNICODE Link icon

      static final int TAG_UNICODE
      The value of constant pool tag UNICODE.
      See Also:
    • TAG_UTF8 Link icon

      static final int TAG_UTF8
      The value of constant pool tag UTF8.
      See Also:
    • AEV_BYTE Link icon

      static final int AEV_BYTE
      The value of annotation element value type AEV_BYTE.
      See Also:
    • AEV_CHAR Link icon

      static final int AEV_CHAR
      The value of annotation element value type AEV_CHAR.
      See Also:
    • AEV_DOUBLE Link icon

      static final int AEV_DOUBLE
      The value of annotation element value type AEV_DOUBLE.
      See Also:
    • AEV_FLOAT Link icon

      static final int AEV_FLOAT
      The value of annotation element value type AEV_FLOAT.
      See Also:
    • AEV_INT Link icon

      static final int AEV_INT
      The value of annotation element value type AEV_INT.
      See Also:
    • AEV_LONG Link icon

      static final int AEV_LONG
      The value of annotation element value type AEV_LONG.
      See Also:
    • AEV_SHORT Link icon

      static final int AEV_SHORT
      The value of annotation element value type AEV_SHORT.
      See Also:
    • AEV_BOOLEAN Link icon

      static final int AEV_BOOLEAN
      The value of annotation element value type AEV_BOOLEAN.
      See Also:
    • AEV_STRING Link icon

      static final int AEV_STRING
      The value of annotation element value type AEV_STRING.
      See Also:
    • AEV_ENUM Link icon

      static final int AEV_ENUM
      The value of annotation element value type AEV_ENUM.
      See Also:
    • AEV_CLASS Link icon

      static final int AEV_CLASS
      The value of annotation element value type AEV_CLASS.
      See Also:
    • AEV_ANNOTATION Link icon

      static final int AEV_ANNOTATION
      The value of annotation element value type AEV_ANNOTATION.
      See Also:
    • AEV_ARRAY Link icon

      static final int AEV_ARRAY
      The value of annotation element value type AEV_ARRAY.
      See Also:
    • TAT_CLASS_TYPE_PARAMETER Link icon

      static final int TAT_CLASS_TYPE_PARAMETER
      The value of type annotation target type CLASS_TYPE_PARAMETER.
      See Also:
    • TAT_METHOD_TYPE_PARAMETER Link icon

      static final int TAT_METHOD_TYPE_PARAMETER
      The value of type annotation target type METHOD_TYPE_PARAMETER.
      See Also:
    • TAT_CLASS_EXTENDS Link icon

      static final int TAT_CLASS_EXTENDS
      The value of type annotation target type CLASS_EXTENDS.
      See Also:
    • TAT_CLASS_TYPE_PARAMETER_BOUND Link icon

      static final int TAT_CLASS_TYPE_PARAMETER_BOUND
      The value of type annotation target type CLASS_TYPE_PARAMETER_BOUND.
      See Also:
    • TAT_METHOD_TYPE_PARAMETER_BOUND Link icon

      static final int TAT_METHOD_TYPE_PARAMETER_BOUND
      The value of type annotation target type METHOD_TYPE_PARAMETER_BOUND.
      See Also:
    • TAT_FIELD Link icon

      static final int TAT_FIELD
      The value of type annotation target type FIELD.
      See Also:
    • TAT_METHOD_RETURN Link icon

      static final int TAT_METHOD_RETURN
      The value of type annotation target type METHOD_RETURN.
      See Also:
    • TAT_METHOD_RECEIVER Link icon

      static final int TAT_METHOD_RECEIVER
      The value of type annotation target type METHOD_RECEIVER.
      See Also:
    • TAT_METHOD_FORMAL_PARAMETER Link icon

      static final int TAT_METHOD_FORMAL_PARAMETER
      The value of type annotation target type METHOD_FORMAL_PARAMETER.
      See Also:
    • TAT_THROWS Link icon

      static final int TAT_THROWS
      The value of type annotation target type THROWS.
      See Also:
    • TAT_LOCAL_VARIABLE Link icon

      static final int TAT_LOCAL_VARIABLE
      The value of type annotation target type LOCAL_VARIABLE.
      See Also:
    • TAT_RESOURCE_VARIABLE Link icon

      static final int TAT_RESOURCE_VARIABLE
      The value of type annotation target type RESOURCE_VARIABLE.
      See Also:
    • TAT_EXCEPTION_PARAMETER Link icon

      static final int TAT_EXCEPTION_PARAMETER
      The value of type annotation target type EXCEPTION_PARAMETER.
      See Also:
    • TAT_INSTANCEOF Link icon

      static final int TAT_INSTANCEOF
      The value of type annotation target type INSTANCEOF.
      See Also:
    • TAT_NEW Link icon

      static final int TAT_NEW
      The value of type annotation target type NEW.
      See Also:
    • TAT_CONSTRUCTOR_REFERENCE Link icon

      static final int TAT_CONSTRUCTOR_REFERENCE
      The value of type annotation target type CONSTRUCTOR_REFERENCE.
      See Also:
    • TAT_METHOD_REFERENCE Link icon

      static final int TAT_METHOD_REFERENCE
      The value of type annotation target type METHOD_REFERENCE.
      See Also:
    • TAT_CAST Link icon

      static final int TAT_CAST
      The value of type annotation target type CAST.
      See Also:
    • TAT_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT Link icon

      static final int TAT_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT
      The value of type annotation target type CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT.
      See Also:
    • TAT_METHOD_INVOCATION_TYPE_ARGUMENT Link icon

      static final int TAT_METHOD_INVOCATION_TYPE_ARGUMENT
      The value of type annotation target type METHOD_INVOCATION_TYPE_ARGUMENT.
      See Also:
    • TAT_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT Link icon

      static final int TAT_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT
      The value of type annotation target type CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT.
      See Also:
    • TAT_METHOD_REFERENCE_TYPE_ARGUMENT Link icon

      static final int TAT_METHOD_REFERENCE_TYPE_ARGUMENT
      The value of type annotation target type METHOD_REFERENCE_TYPE_ARGUMENT.
      See Also:
    • VT_TOP Link icon

      static final int VT_TOP
      The value of verification type TOP.
      See Also:
    • VT_INTEGER Link icon

      static final int VT_INTEGER
      The value of verification type INTEGER.
      See Also:
    • VT_FLOAT Link icon

      static final int VT_FLOAT
      The value of verification type FLOAT.
      See Also:
    • VT_DOUBLE Link icon

      static final int VT_DOUBLE
      The value of verification type DOUBLE.
      See Also:
    • VT_LONG Link icon

      static final int VT_LONG
      The value of verification type LONG.
      See Also:
    • VT_NULL Link icon

      static final int VT_NULL
      The value of verification type NULL.
      See Also:
    • VT_UNINITIALIZED_THIS Link icon

      static final int VT_UNINITIALIZED_THIS
      The value of verification type UNINITIALIZED_THIS.
      See Also:
    • VT_OBJECT Link icon

      static final int VT_OBJECT
      The value of verification type OBJECT.
      See Also:
    • VT_UNINITIALIZED Link icon

      static final int VT_UNINITIALIZED
      The value of verification type UNINITIALIZED.
      See Also:
    • DEFAULT_CLASS_FLAGS Link icon

      static final int DEFAULT_CLASS_FLAGS
      The value of default class access flags
      See Also:
    • JAVA_1_VERSION Link icon

      static final int JAVA_1_VERSION
      The class major version of JAVA_1.
      See Also:
    • JAVA_2_VERSION Link icon

      static final int JAVA_2_VERSION
      The class major version of JAVA_2.
      See Also:
    • JAVA_3_VERSION Link icon

      static final int JAVA_3_VERSION
      The class major version of JAVA_3.
      See Also:
    • JAVA_4_VERSION Link icon

      static final int JAVA_4_VERSION
      The class major version of JAVA_4.
      See Also:
    • JAVA_5_VERSION Link icon

      static final int JAVA_5_VERSION
      The class major version of JAVA_5.
      See Also:
    • JAVA_6_VERSION Link icon

      static final int JAVA_6_VERSION
      The class major version of JAVA_6.
      See Also:
    • JAVA_7_VERSION Link icon

      static final int JAVA_7_VERSION
      The class major version of JAVA_7.
      See Also:
    • JAVA_8_VERSION Link icon

      static final int JAVA_8_VERSION
      The class major version of JAVA_8.
      See Also:
    • JAVA_9_VERSION Link icon

      static final int JAVA_9_VERSION
      The class major version of JAVA_9.
      See Also:
    • JAVA_10_VERSION Link icon

      static final int JAVA_10_VERSION
      The class major version of JAVA_10.
      See Also:
    • JAVA_11_VERSION Link icon

      static final int JAVA_11_VERSION
      The class major version of JAVA_11.
      See Also:
    • JAVA_12_VERSION Link icon

      static final int JAVA_12_VERSION
      The class major version of JAVA_12.
      See Also:
    • JAVA_13_VERSION Link icon

      static final int JAVA_13_VERSION
      The class major version of JAVA_13.
      See Also:
    • JAVA_14_VERSION Link icon

      static final int JAVA_14_VERSION
      The class major version of JAVA_14.
      See Also:
    • JAVA_15_VERSION Link icon

      static final int JAVA_15_VERSION
      The class major version of JAVA_15.
      See Also:
    • JAVA_16_VERSION Link icon

      static final int JAVA_16_VERSION
      The class major version of JAVA_16.
      See Also:
    • JAVA_17_VERSION Link icon

      static final int JAVA_17_VERSION
      The class major version of JAVA_17.
      See Also:
    • JAVA_18_VERSION Link icon

      static final int JAVA_18_VERSION
      The class major version of JAVA_18.
      See Also:
    • JAVA_19_VERSION Link icon

      static final int JAVA_19_VERSION
      The class major version of JAVA_19.
      See Also:
    • JAVA_20_VERSION Link icon

      static final int JAVA_20_VERSION
      The class major version of JAVA_20.
      See Also:
    • JAVA_21_VERSION Link icon

      static final int JAVA_21_VERSION
      The class major version of JAVA_21.
      See Also:
    • JAVA_22_VERSION Link icon

      static final int JAVA_22_VERSION
      The class major version of JAVA_22.
      See Also:
    • JAVA_23_VERSION Link icon

      static final int JAVA_23_VERSION
      67
      See Also:
    • PREVIEW_MINOR_VERSION Link icon

      static final int PREVIEW_MINOR_VERSION
      A 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 Link icon

    • of Link icon

      static ClassFilePREVIEW of()
      Returns a context with default options.
      Returns:
      a context with default options
    • of Link icon

      static ClassFilePREVIEW of(ClassFile.OptionPREVIEW... options)
      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 Link icon

      ClassFilePREVIEW withOptions(ClassFile.OptionPREVIEW... options)
      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 Link icon

      ClassModelPREVIEW parse(byte[] bytes)
      Parse a classfile into a ClassModelPREVIEW.
      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 Link icon

      default ClassModelPREVIEW parse(Path path) throws IOException
      Parse a classfile into a ClassModelPREVIEW.
      Parameters:
      path - the path to the classfile
      Returns:
      the class model
      Throws:
      IOException - if an I/O error occurs
      IllegalArgumentException - or its subclass if the classfile format is not supported or an incompatibility prevents parsing of the classfile
    • build Link icon

      default byte[] build(ClassDesc thisClass, Consumer<? super ClassBuilderPREVIEW> handler)
      Build a classfile into a byte array.
      Parameters:
      thisClass - the name of the class to build
      handler - a handler that receives a ClassBuilderPREVIEW
      Returns:
      the classfile bytes
      Throws:
      IllegalArgumentException - if thisClass represents a primitive type
    • build Link icon

      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 build
      constantPool - the constant pool builder
      handler - a handler that receives a ClassBuilderPREVIEW
      Returns:
      the classfile bytes
    • buildTo Link icon

      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 write
      thisClass - the name of the class to build
      handler - a handler that receives a ClassBuilderPREVIEW
      Throws:
      IOException - if an I/O error occurs
    • buildTo Link icon

      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 write
      thisClassEntry - the name of the class to build
      constantPool - the constant pool builder
      handler - a handler that receives a ClassBuilderPREVIEW
      Throws:
      IOException - if an I/O error occurs
    • buildModule Link icon

      default byte[] buildModule(ModuleAttributePREVIEW moduleAttribute)
      Build a module descriptor into a byte array.
      Parameters:
      moduleAttribute - the Module attribute
      Returns:
      the classfile bytes
    • buildModule Link icon

      default byte[] buildModule(ModuleAttributePREVIEW moduleAttribute, Consumer<? super ClassBuilderPREVIEW> handler)
      Build a module descriptor into a byte array.
      Parameters:
      moduleAttribute - the Module attribute
      handler - a handler that receives a ClassBuilderPREVIEW
      Returns:
      the classfile bytes
    • buildModuleTo Link icon

      default void buildModuleTo(Path path, ModuleAttributePREVIEW moduleAttribute) throws IOException
      Build a module descriptor into a file.
      Parameters:
      path - the file to write
      moduleAttribute - the Module attribute
      Throws:
      IOException - if an I/O error occurs
    • buildModuleTo Link icon

      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 write
      moduleAttribute - the Module attribute
      handler - a handler that receives a ClassBuilderPREVIEW
      Throws:
      IOException - if an I/O error occurs
    • transform Link icon

      default byte[] transform(ClassModelPREVIEW model, ClassTransformPREVIEW transform)
      Transform one classfile into a new classfile with the aid of a ClassTransformPREVIEW. The transform will receive each element of this class, as well as a ClassBuilderPREVIEW 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 transform
      transform - the transform
      Returns:
      the bytes of the new class
    • transform Link icon

      default byte[] transform(ClassModelPREVIEW model, ClassDesc newClassName, ClassTransformPREVIEW transform)
      Transform one classfile into a new classfile with the aid of a ClassTransformPREVIEW. The transform will receive each element of this class, as well as a ClassBuilderPREVIEW 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 transform
      newClassName - new class name
      transform - the transform
      Returns:
      the bytes of the new class
    • transform Link icon

      byte[] transform(ClassModelPREVIEW model, ClassEntryPREVIEW newClassName, ClassTransformPREVIEW transform)
      Transform one classfile into a new classfile with the aid of a ClassTransformPREVIEW. The transform will receive each element of this class, as well as a ClassBuilderPREVIEW 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 transform
      newClassName - new class name
      transform - the transform
      Returns:
      the bytes of the new class
    • verify Link icon

      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 Link icon

      List<VerifyError> verify(byte[] bytes)
      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 Link icon

      default List<VerifyError> verify(Path path) throws IOException
      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 Link icon

      static int latestMajorVersion()
      Returns the latest major Java version.
      Returns:
      the latest major Java version
    • latestMinorVersion Link icon

      static int latestMinorVersion()
      Returns the latest minor Java version.
      Returns:
      the latest minor Java version