Uses of Class
org.apache.bcel.generic.Instruction
Packages that use Instruction
Package
Description
Generic part of the Apache Byte Code Engineering Library (BCEL), classes to dynamically modify class objects
and byte code instructions.
-
Uses of Instruction in org.apache.bcel.generic
Subclasses of Instruction in org.apache.bcel.genericModifier and TypeClassDescriptionclassAALOAD - Load reference from arrayclassAASTORE - Store into reference arrayclassACONST_NULL - Push null referenceclassALOAD - Load reference from local variableclassANEWARRAY - Create new array of referencesclassARETURN - Return reference from methodclassSuper class for the family of arithmetic instructions.classSuper class for instructions dealing with array access such as IALOAD.classARRAYLENGTH - Get length of arrayclassASTORE - Store reference into local variableclassATHROW - Throw exceptionclassBALOAD - Load byte or boolean from arrayclassBASTORE - Store into byte or boolean arrayclassBIPUSH - Push byte on stackclassAbstract super class for branching instructions like GOTO, IFEQ, etc..classBREAKPOINT, JVM dependent, ignored by defaultclassCALOAD - Load char from arrayclassCASTORE - Store into char arrayclassCHECKCAST - Check whether object is of given typeclassSuper class for the x2y family of instructions.classAbstract super class for instructions that use an index into the constant pool such as LDC, INVOKEVIRTUAL, etc.classD2F - Convert double to floatclassD2I - Convert double to intclassD2L - Convert double to longclassDADD - Add doublesclassDALOAD - Load double from arrayclassDASTORE - Store into double arrayclassDCMPG - Compare doubles: value1 > value2classDCMPL - Compare doubles: value1 < value2classDCONST - Push 0.0 or 1.0, other values cause an exceptionclassDDIV - Divide doublesclassDLOAD - Load double from local variableclassDMUL - Multiply doublesclassDNEG - Negate doubleclassDREM - Remainder of doublesclassDRETURN - Return double from methodclassDSTORE - Store double into local variableclassDSUB - Substract doublesclassDUP - Duplicate top operand stack wordclassDUP_X1 - Duplicate top operand stack word and put two downclassDUP_X2 - Duplicate top operand stack word and put three downclassDUP2 - Duplicate two top operand stack wordsclassDUP2_X1 - Duplicate two top operand stack words and put three downclassDUP2_X2 - Duplicate two top operand stack words and put four downclassF2D - Convert float to doubleclassF2I - Convert float to intclassF2L - Convert float to longclassFADD - Add floatsclassFALOAD - Load float from arrayclassFASTORE - Store into float arrayclassFCMPG - Compare floats: value1 > value2classFCMPL - Compare floats: value1 < value2classFCONST - Push 0.0, 1.0 or 2.0, other values cause an exceptionclassFDIV - Divide floatsclassSuper class for the GET/PUTxxx family of instructions.classSuper class for InvokeInstruction and FieldInstruction, since they have some methods in common!classFLOAD - Load float from local variableclassFMUL - Multiply floatsclassFNEG - Negate floatclassFREM - Remainder of floatsclassFRETURN - Return float from methodclassFSTORE - Store float into local variableclassFSUB - Substract floatsclassGETFIELD - Fetch field from objectclassGETSTATIC - Fetch static field from classclassGOTO - Branch always (to relative offset, not absolute address)classGOTO_W - Branch always (to relative offset, not absolute address)classSuper class for GOTOclassI2B - Convert int to byteclassI2C - Convert int to charclassI2D - Convert int to doubleclassI2F - Convert int to floatclassI2L - Convert int to longclassI2S - Convert int to shortclassIADD - Add intsclassIALOAD - Load int from arrayclassIAND - Bitwise AND intclassIASTORE - Store into int arrayclassICONST - Push value between -1, ..., 5, other values cause an exceptionclassIDIV - Divide intsclassIF_ACMPEQ - Branch if reference comparison succeedsclassIF_ACMPNE - Branch if reference comparison doesn't succeedclassIF_ICMPEQ - Branch if int comparison succeedsclassIF_ICMPGE - Branch if int comparison succeedsclassIF_ICMPGT - Branch if int comparison succeedsclassIF_ICMPLE - Branch if int comparison succeedsclassIF_ICMPLT - Branch if int comparison succeedsclassIF_ICMPNE - Branch if int comparison doesn't succeedclassIFEQ - Branch if int comparison with zero succeedsclassIFGE - Branch if int comparison with zero succeedsclassIFGT - Branch if int comparison with zero succeedsclassSuper class for the IFxxx family of instructions.classIFLE - Branch if int comparison with zero succeedsclassIFLT - Branch if int comparison with zero succeedsclassIFNE - Branch if int comparison with zero succeedsclassIFNONNULL - Branch if reference is not nullclassIFNULL - Branch if reference is not nullclassIINC - Increment local variable by constantclassILOAD - Load int from local variable onto stackclassIMPDEP1 - Implementation dependentclassIMPDEP2 - Implementation dependentclassIMUL - Multiply intsclassINEG - Negate intclassINSTANCEOF - Determine if object is of given typeclassClass for INVOKEDYNAMIC.classSuper class for the INVOKExxx family of instructions.final classINVOKEINTERFACE - Invoke interface methodclassINVOKESPECIAL - Invoke instance method; special handling for superclass, private and instance initialization method invocationsclassINVOKESTATIC - Invoke a class (static) methodclassINVOKEVIRTUAL - Invoke instance method; dispatch based on classclassIOR - Bitwise OR intclassIREM - Remainder of intclassIRETURN - Return int from methodclassISHL - Arithmetic shift left intclassISHR - Arithmetic shift right intclassISTORE - Store int from stack into local variableclassISUB - Substract intsclassIUSHR - Logical shift right intclassIXOR - Bitwise XOR intclassJSR - Jump to subroutineclassJSR_W - Jump to subroutineclassSuper class for JSR - Jump to subroutineclassL2D - Convert long to doubleclassL2F - Convert long to floatclassL2I - Convert long to intclassLADD - Add longsclassLALOAD - Load long from arrayclassLAND - Bitwise AND longsclassLASTORE - Store into long arrayclassLCMP - Compare longs:classLCONST - Push 0 or 1, other values cause an exceptionclassLDC - Push item from constant pool.classLDC_W - Push item from constant pool (wide index)classLDC2_W - Push long or double from constant poolclassLDIV - Divide longsclassLLOAD - Load long from local variableclassLMUL - Multiply longsclassLNEG - Negate longclassDenotes an unparameterized instruction to load a value from a local variable, e.g.classAbstract super class for instructions dealing with local variables.classLOOKUPSWITCH - Switch with unordered set of valuesclassLOR - Bitwise OR longclassLREM - Remainder of longclassLRETURN - Return long from methodclassLSHL - Arithmetic shift left longclassLSHR - Arithmetic shift right longclassLSTORE - Store long into local variableclassLSUB - Substract longsclassLUSHR - Logical shift right longclassLXOR - Bitwise XOR longclassMONITORENTER - Enter monitor for objectclassMONITOREXIT - Exit monitor for objectclassMULTIANEWARRAY - Create new mutidimensional array of referencesclassSuper class for FieldOrMethod and INVOKEDYNAMIC, since they both have names and signaturesclassNEW - Create new objectclassNEWARRAY - Create new array of basic type (int, short, ...)classNOP - Do nothingclassPOP - Pop top operand stack wordclassPOP2 - Pop two top operand stack wordsclassPUTFIELD - Put field in objectclassPUTSTATIC - Put static field in classclassRET - Return from subroutineclassRETURN - Return from void methodclassSuper class for the xRETURN family of instructions.classSALOAD - Load short from arrayclassSASTORE - Store into short arrayclassSelect - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.classSIPUSH - Push shortclassSuper class for stack operations like DUP and POP.classDenotes an unparameterized instruction to store a value into a local variable, e.g.classSWAP - Swa top operand stack wordclassTABLESWITCH - Switch within given range of values, i.e., low..highFields in org.apache.bcel.generic declared as InstructionModifier and TypeFieldDescriptionstatic final InstructionInstructionConst.ACONST_NULLstatic final InstructionInstructionConstants.ACONST_NULLDeprecated.static final InstructionInstructionConst.ARRAYLENGTHstatic final InstructionInstructionConstants.ARRAYLENGTHDeprecated.static final InstructionInstructionConst.ATHROWstatic final InstructionInstructionConstants.ATHROWDeprecated.static final InstructionInstructionConst.DCMPGstatic final InstructionInstructionConstants.DCMPGDeprecated.static final InstructionInstructionConst.DCMPLstatic final InstructionInstructionConstants.DCMPLDeprecated.static final InstructionInstructionConst.DCONST_0static final InstructionInstructionConstants.DCONST_0Deprecated.static final InstructionInstructionConst.DCONST_1static final InstructionInstructionConstants.DCONST_1Deprecated.static final InstructionInstructionConst.FCMPGstatic final InstructionInstructionConstants.FCMPGDeprecated.static final InstructionInstructionConst.FCMPLstatic final InstructionInstructionConstants.FCMPLDeprecated.static final InstructionInstructionConst.FCONST_0static final InstructionInstructionConstants.FCONST_0Deprecated.static final InstructionInstructionConst.FCONST_1static final InstructionInstructionConstants.FCONST_1Deprecated.static final InstructionInstructionConst.FCONST_2static final InstructionInstructionConstants.FCONST_2Deprecated.static final InstructionInstructionConst.ICONST_0static final InstructionInstructionConstants.ICONST_0Deprecated.static final InstructionInstructionConst.ICONST_1static final InstructionInstructionConstants.ICONST_1Deprecated.static final InstructionInstructionConst.ICONST_2static final InstructionInstructionConstants.ICONST_2Deprecated.static final InstructionInstructionConst.ICONST_3static final InstructionInstructionConstants.ICONST_3Deprecated.static final InstructionInstructionConst.ICONST_4static final InstructionInstructionConstants.ICONST_4Deprecated.static final InstructionInstructionConst.ICONST_5static final InstructionInstructionConstants.ICONST_5Deprecated.static final InstructionInstructionConst.ICONST_M1static final InstructionInstructionConstants.ICONST_M1Deprecated.static final Instruction[]InstructionConstants.INSTRUCTIONSDeprecated.Gets object via its opcode, for immutable instructions like branch instructions entries are set to null.static final InstructionInstructionConst.LCMPstatic final InstructionInstructionConstants.LCMPDeprecated.static final InstructionInstructionConst.LCONST_0static final InstructionInstructionConstants.LCONST_0Deprecated.static final InstructionInstructionConst.LCONST_1static final InstructionInstructionConstants.LCONST_1Deprecated.static final InstructionInstructionConst.MONITORENTERstatic final InstructionInstructionConstants.MONITORENTERDeprecated.static final InstructionInstructionConst.MONITOREXITstatic final InstructionInstructionConstants.MONITOREXITDeprecated.static final InstructionInstructionConst.NOPPredefined instruction objects.static final InstructionInstructionConstants.NOPDeprecated.Methods in org.apache.bcel.generic that return InstructionModifier and TypeMethodDescriptionInstruction.copy()Use with caution, since 'BranchInstruction's have a 'target' reference which is not copied correctly (only basic types are).InstructionFactory.createAppend(Type type) InstructionFactory.createCast(Type srcType, Type destType) Create conversion operation for two stack operands, this may be an I2C, instruction, e.g., if the operands are basic types and CHECKCAST if they are reference types.InstructionFactory.createConstant(Object value) Uses PUSH to push a constant value onto the stack.InstructionFactory.createNewArray(Type t, short dim) Create new array of given size and type.static InstructionInstructionFactory.createNull(Type type) Create "null" value for reference types, 0 for basic types like intstatic InstructionInstructionFactory.createThis()Create reference to 'this'static InstructionInstructionConst.getInstruction(int index) Gets the Instruction.final InstructionInstructionHandle.getInstruction()PUSH.getInstruction()SWITCH.getInstruction()InstructionList.getInstructions()static InstructionInstruction.readInstruction(ByteSequence bytes) Reads an instruction from (byte code) input stream and return the appropriate object.InstructionHandle.swapInstruction(Instruction i) Temporarily swap the current instruction, without disturbing anything.Methods in org.apache.bcel.generic with parameters of type InstructionModifier and TypeMethodDescriptionInstructionList.append(Instruction i) Append an instruction to the end of this list.InstructionList.append(InstructionHandle ih, Instruction i) Append an instruction after instruction (handle) ih contained in this list.InstructionList.append(Instruction i, CompoundInstruction c) Append a compound instruction, after instruction i.InstructionList.append(Instruction i, Instruction j) Append a single instruction j after another instruction i, which must be in this list of course!InstructionList.append(Instruction i, InstructionList il) Append another list after instruction i contained in this list.booleanInstructionList.contains(Instruction i) voidInstructionList.delete(Instruction i) Remove instruction from this list.voidInstructionList.delete(Instruction from, Instruction to) Remove instructions from instruction 'from' to instruction 'to' contained in this list.booleanInstructionComparator.equals(Instruction i1, Instruction i2) InstructionList.insert(Instruction i) Insert an instruction at start of this list.InstructionList.insert(InstructionHandle ih, Instruction i) Insert an instruction before instruction (handle) ih contained in this list.InstructionList.insert(Instruction i, CompoundInstruction c) Insert a compound instruction before instruction i.InstructionList.insert(Instruction i, Instruction j) Insert a single instruction j before another instruction i, which must be in this list of course!InstructionList.insert(Instruction i, InstructionList il) Insert another list before Instruction i contained in this list.voidBranchHandle.setInstruction(Instruction i) Sets new contents.voidInstructionHandle.setInstruction(Instruction i) Replace current instruction contained in this handle.InstructionHandle.swapInstruction(Instruction i) Temporarily swap the current instruction, without disturbing anything.Constructors in org.apache.bcel.generic with parameters of type InstructionModifierConstructorDescriptionprotectedCreate instruction list containing one instruction.