Class PUSH
java.lang.Object
org.apache.bcel.generic.PUSH
- All Implemented Interfaces:
CompoundInstruction, InstructionConstants, VariableLengthInstruction
public final class PUSH
extends Object
implements CompoundInstruction, VariableLengthInstruction, InstructionConstants
Wrapper class for push operations, which are implemented either as BIPUSH, LDC or xCONST_n instructions.
-
Nested Class Summary
Nested classes/interfaces inherited from interface InstructionConstants
InstructionConstants.ClinitModifier and TypeInterfaceDescriptionstatic classDeprecated.Consider private. -
Field Summary
Fields inherited from interface InstructionConstants
AALOAD, AASTORE, ACONST_NULL, ALOAD_0, ALOAD_1, ALOAD_2, ARETURN, ARRAYLENGTH, ASTORE_0, ASTORE_1, ASTORE_2, ATHROW, BALOAD, BASTORE, bla, CALOAD, CASTORE, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DMUL, DNEG, DREM, DRETURN, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FMUL, FNEG, FREM, FRETURN, FSUB, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, ILOAD_0, ILOAD_1, ILOAD_2, IMUL, INEG, INSTRUCTIONS, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE_0, ISTORE_1, ISTORE_2, ISUB, IUSHR, IXOR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDIV, LMUL, LNEG, LOR, LREM, LRETURN, LSHL, LSHR, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, NOP, POP, POP2, RETURN, SALOAD, SASTORE, SWAP, THISModifier and TypeFieldDescriptionstatic final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final ReturnInstructionDeprecated.static final InstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final InstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionConstants.ClinitDeprecated.Interfaces may have no static initializers, so we simulate this with an inner class.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.D2F.static final ConversionInstructionDeprecated.UseInstructionConst.D2I.static final ConversionInstructionDeprecated.UseInstructionConst.D2L.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final StackInstructionDeprecated.UseInstructionConst.DUP.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.F2D.static final ConversionInstructionDeprecated.UseInstructionConst.F2I.static final ConversionInstructionDeprecated.UseInstructionConst.F2L.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.I2B.static final ConversionInstructionDeprecated.UseInstructionConst.I2C.static final ConversionInstructionDeprecated.UseInstructionConst.I2D.static final ConversionInstructionDeprecated.UseInstructionConst.I2F.static final ConversionInstructionDeprecated.UseInstructionConst.I2L.static final ConversionInstructionDeprecated.UseInstructionConst.I2S.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final Instruction[]Deprecated.UseInstructionConst.INSTRUCTIONS.static final ArithmeticInstructionDeprecated.UseInstructionConst.IOR.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.L2D.static final ConversionInstructionDeprecated.UseInstructionConst.L2F.static final ConversionInstructionDeprecated.UseInstructionConst.L2I.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.UseInstructionConst.LOR.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.UseInstructionConst.NOP.static final StackInstructionDeprecated.UseInstructionConst.POP.static final StackInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final StackInstructionDeprecated.static final LocalVariableInstructionDeprecated. -
Constructor Summary
ConstructorsConstructorDescriptionPUSH(ConstantPoolGen cp, boolean value) Constructs a PUSH for a boolean value.PUSH(ConstantPoolGen cp, double value) Constructs a PUSH for a double value.PUSH(ConstantPoolGen cp, float value) Constructs a PUSH for a float value.PUSH(ConstantPoolGen cp, int value) This constructor also applies for values of type short, char, bytePUSH(ConstantPoolGen cp, long value) Constructs a PUSH for a long value.PUSH(ConstantPoolGen cp, Boolean value) Constructs a PUSH for a Boolean value.PUSH(ConstantPoolGen cp, Character value) creates a push object from a Character value.PUSH(ConstantPoolGen cp, Number value) Constructs a PUSH for a Number value.PUSH(ConstantPoolGen cp, String value) Constructs a PUSH for a String value.PUSH(ConstantPoolGen cp, ArrayType value) Pushes an array type constant, for exampleint[].class,String[].class, and so on.PUSH(ConstantPoolGen cp, ObjectType value) Constructs a PUSH for an ObjectType value. -
Method Summary
-
Constructor Details
-
PUSH
Pushes an array type constant, for exampleint[].class,String[].class, and so on.- Parameters:
cp- generated constant pool.value- to push.- Since:
- 6.7.0
-
PUSH
Constructs a PUSH for a boolean value.- Parameters:
cp- Constant pool.value- to push.
-
PUSH
Constructs a PUSH for a Boolean value.- Parameters:
cp- Constant pool.value- to push.
-
PUSH
creates a push object from a Character value. Warning: Make sure not to attempt to allow autoboxing to create this value parameter, as an alternative constructor will be called- Parameters:
cp- Constant pool.value- to push.
-
PUSH
Constructs a PUSH for a double value.- Parameters:
cp- Constant pool.value- to push.
-
PUSH
Constructs a PUSH for a float value.- Parameters:
cp- Constant pool.value- to push.
-
PUSH
This constructor also applies for values of type short, char, byte- Parameters:
cp- Constant pool.value- to push.
-
PUSH
Constructs a PUSH for a long value.- Parameters:
cp- Constant pool.value- to push.
-
PUSH
Constructs a PUSH for a Number value.- Parameters:
cp- Constant pool.value- to push.
-
PUSH
Constructs a PUSH for an ObjectType value.- Parameters:
cp- The constant pool.value- to push.- Since:
- 6.0
-
PUSH
Constructs a PUSH for a String value.- Parameters:
cp- Constant pool.value- to push.
-
-
Method Details
-
getInstruction
-
getInstructionList
Description copied from interface:CompoundInstructionGets the instruction list.- Specified by:
getInstructionListin interfaceCompoundInstruction- Returns:
- The instruction list.
-
toString
-