Package com.strobel.reflection.emit
Enum Class OpCode
- All Implemented Interfaces:
Serializable,Comparable<OpCode>,Constable
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescription -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final intprivate final OperandTypeprivate static OpCode[]private static OpCode[]private static final byte[]static final intThe byte prefix for the wide instructions.static final int -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateOpCode(int code) privateOpCode(int code, OperandType operandType) -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic OpCodeget(int code) Get the OpCode for a simple standard 1-byte opcode.intgetCode()private static OpCode[]getOpcodeBlock(int prefix) intgetSize()intintbooleanisWide()negate()static OpCodeReturns the enum constant of this class with the specified name.static OpCode[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
NOP
-
ACONST_NULL
-
ICONST_M1
-
ICONST_0
-
ICONST_1
-
ICONST_2
-
ICONST_3
-
ICONST_4
-
ICONST_5
-
LCONST_0
-
LCONST_1
-
FCONST_0
-
FCONST_1
-
FCONST_2
-
DCONST_0
-
DCONST_1
-
BIPUSH
-
SIPUSH
-
LDC
-
LDC_W
-
LDC2_W
-
ILOAD
-
LLOAD
-
FLOAD
-
DLOAD
-
ALOAD
-
ILOAD_0
-
ILOAD_1
-
ILOAD_2
-
ILOAD_3
-
LLOAD_0
-
LLOAD_1
-
LLOAD_2
-
LLOAD_3
-
FLOAD_0
-
FLOAD_1
-
FLOAD_2
-
FLOAD_3
-
DLOAD_0
-
DLOAD_1
-
DLOAD_2
-
DLOAD_3
-
ALOAD_0
-
ALOAD_1
-
ALOAD_2
-
ALOAD_3
-
IALOAD
-
LALOAD
-
FALOAD
-
DALOAD
-
AALOAD
-
BALOAD
-
CALOAD
-
SALOAD
-
ISTORE
-
LSTORE
-
FSTORE
-
DSTORE
-
ASTORE
-
ISTORE_0
-
ISTORE_1
-
ISTORE_2
-
ISTORE_3
-
LSTORE_0
-
LSTORE_1
-
LSTORE_2
-
LSTORE_3
-
FSTORE_0
-
FSTORE_1
-
FSTORE_2
-
FSTORE_3
-
DSTORE_0
-
DSTORE_1
-
DSTORE_2
-
DSTORE_3
-
ASTORE_0
-
ASTORE_1
-
ASTORE_2
-
ASTORE_3
-
IASTORE
-
LASTORE
-
FASTORE
-
DASTORE
-
AASTORE
-
BASTORE
-
CASTORE
-
SASTORE
-
POP
-
POP2
-
DUP
-
DUP_X1
-
DUP_X2
-
DUP2
-
DUP2_X1
-
DUP2_X2
-
SWAP
-
IADD
-
LADD
-
FADD
-
DADD
-
ISUB
-
LSUB
-
FSUB
-
DSUB
-
IMUL
-
LMUL
-
FMUL
-
DMUL
-
IDIV
-
LDIV
-
FDIV
-
DDIV
-
IREM
-
LREM
-
FREM
-
DREM
-
INEG
-
LNEG
-
FNEG
-
DNEG
-
ISHL
-
LSHL
-
ISHR
-
LSHR
-
IUSHR
-
LUSHR
-
IAND
-
LAND
-
IOR
-
LOR
-
IXOR
-
LXOR
-
IINC
-
I2L
-
I2F
-
I2D
-
L2I
-
L2F
-
L2D
-
F2I
-
F2L
-
F2D
-
D2I
-
D2L
-
D2F
-
I2B
-
I2C
-
I2S
-
LCMP
-
FCMPL
-
FCMPG
-
DCMPL
-
DCMPG
-
IFEQ
-
IFNE
-
IFLT
-
IFGE
-
IFGT
-
IFLE
-
IF_ICMPEQ
-
IF_ICMPNE
-
IF_ICMPLT
-
IF_ICMPGE
-
IF_ICMPGT
-
IF_ICMPLE
-
IF_ACMPEQ
-
IF_ACMPNE
-
GOTO
-
JSR
-
RET
-
TABLESWITCH
-
LOOKUPSWITCH
-
IRETURN
-
LRETURN
-
FRETURN
-
DRETURN
-
ARETURN
-
RETURN
-
GETSTATIC
-
PUTSTATIC
-
GETFIELD
-
PUTFIELD
-
INVOKEVIRTUAL
-
INVOKESPECIAL
-
INVOKESTATIC
-
INVOKEINTERFACE
-
INVOKEDYNAMIC
-
NEW
-
NEWARRAY
-
ANEWARRAY
-
ARRAYLENGTH
-
ATHROW
-
CHECKCAST
-
INSTANCEOF
-
MONITORENTER
-
MONITOREXIT
-
MULTIANEWARRAY
-
IFNULL
-
IFNONNULL
-
GOTO_W
-
JSR_W
-
BREAKPOINT
-
ILOAD_W
-
LLOAD_W
-
FLOAD_W
-
DLOAD_W
-
ALOAD_W
-
ISTORE_W
-
LSTORE_W
-
FSTORE_W
-
DSTORE_W
-
ASTORE_W
-
IINC_W
-
RET_W
-
-
Field Details
-
_code
private final int _code -
_operandType
-
STANDARD
public static final int STANDARDThe byte prefix for the wide instructions.- See Also:
-
WIDE
public static final int WIDE- See Also:
-
_standardOpCodes
-
_wideOpCodes
-
stackChange
private static final byte[] stackChange
-
-
Constructor Details
-
OpCode
private OpCode(int code) -
OpCode
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-
getCode
public int getCode() -
isWide
public boolean isWide() -
getOperandType
-
getSize
public int getSize() -
getSizeWithOperands
public int getSizeWithOperands() -
getStackChange
public int getStackChange() -
negate
-
get
Get the OpCode for a simple standard 1-byte opcode. -
getOpcodeBlock
-
endsUnconditionalJumpBlock
public boolean endsUnconditionalJumpBlock()
-