| 
 | |||||||||||
| PREV NEXT | FRAMES NO FRAMES | ||||||||||
| Packages that use Instruction | |
| org.apache.bcel.generic | This package contains the "generic" part of the Byte Code Engineering Library, i.e., 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.generic | |
|  class | AALOADAALOAD - Load reference from array Stack: ..., arrayref, index -> value | 
|  class | AASTOREAASTORE - Store into reference array Stack: ..., arrayref, index, value -> ... | 
|  class | ACONST_NULLACONST_NULL - Push null reference Stack: ... | 
|  class | ALOADALOAD - Load reference from local variable Stack: ... | 
|  class | ANEWARRAYANEWARRAY - Create new array of references Stack: ..., count -> ..., arrayref | 
|  class | ARETURNARETURN - Return reference from method Stack: ..., objectref -> <empty> | 
|  class | ArithmeticInstructionSuper class for the family of arithmetic instructions. | 
|  class | ArrayInstructionSuper class for instructions dealing with array access such as IALOAD. | 
|  class | ARRAYLENGTHARRAYLENGTH - Get length of array Stack: ..., arrayref -> ..., length | 
|  class | ASTOREASTORE - Store reference into local variable Stack ..., objectref -> ... | 
|  class | ATHROWATHROW - Throw exception Stack: ..., objectref -> objectref | 
|  class | BALOADBALOAD - Load byte or boolean from array Stack: ..., arrayref, index -> ..., value | 
|  class | BASTOREBASTORE - Store into byte or boolean array Stack: ..., arrayref, index, value -> ... | 
|  class | BIPUSHBIPUSH - Push byte on stack Stack: ... | 
|  class | BranchInstructionAbstract super class for branching instructions like GOTO, IFEQ, etc.. | 
|  class | BREAKPOINTBREAKPOINT, JVM dependent, ignored by default | 
|  class | CALOADCALOAD - Load char from array Stack: ..., arrayref, index -> ..., value | 
|  class | CASTORECASTORE - Store into char array Stack: ..., arrayref, index, value -> ... | 
|  class | CHECKCASTCHECKCAST - Check whether object is of given type Stack: ..., objectref -> ..., objectref | 
|  class | ConversionInstructionSuper class for the x2y family of instructions. | 
|  class | CPInstructionAbstract super class for instructions that use an index into the constant pool such as LDC, INVOKEVIRTUAL, etc. | 
|  class | D2FD2F - Convert double to float Stack: ..., value.word1, value.word2 -> ..., result | 
|  class | D2ID2I - Convert double to int Stack: ..., value.word1, value.word2 -> ..., result | 
|  class | D2LD2L - Convert double to long Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 | 
|  class | DADDDADD - Add doubles Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result1.word2 | 
|  class | DALOADDALOAD - Load double from array Stack: ..., arrayref, index -> ..., result.word1, result.word2 | 
|  class | DASTOREDASTORE - Store into double array Stack: ..., arrayref, index, value.word1, value.word2 -> ... | 
|  class | DCMPGDCMPG - Compare doubles: value1 > value2 Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result | 
|  class | DCMPLDCMPL - Compare doubles: value1 < value2 Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result | 
|  class | DCONSTDCONST - Push 0.0 or 1.0, other values cause an exception Stack: ... | 
|  class | DDIVDDIV - Divide doubles Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | DLOADDLOAD - Load double from local variable Stack ... | 
|  class | DMULDMUL - Multiply doubles Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | DNEGDNEG - Negate double Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 | 
|  class | DREMDREM - Remainder of doubles Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | DRETURNDRETURN - Return double from method Stack: ..., value.word1, value.word2 -> <empty> | 
|  class | DSTOREDSTORE - Store double into local variable Stack: ..., value.word1, value.word2 -> ... | 
|  class | DSUBDSUB - Substract doubles Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | DUPDUP - Duplicate top operand stack word Stack: ..., word -> ..., word, word | 
|  class | DUP_X1DUP_X1 - Duplicate top operand stack word and put two down Stack: ..., word2, word1 -> ..., word1, word2, word1 | 
|  class | DUP_X2DUP_X2 - Duplicate top operand stack word and put three down Stack: ..., word3, word2, word1 -> ..., word1, word3, word2, word1 | 
|  class | DUP2DUP2 - Duplicate two top operand stack words Stack: ..., word2, word1 -> ..., word2, word1, word2, word1 | 
|  class | DUP2_X1DUP2_X1 - Duplicate two top operand stack words and put three down Stack: ..., word3, word2, word1 -> ..., word2, word1, word3, word2, word1 | 
|  class | DUP2_X2DUP2_X2 - Duplicate two top operand stack words and put four down Stack: ..., word4, word3, word2, word1 -> ..., word2, word1, word4, word3, word2, word1 | 
|  class | F2DF2D - Convert float to double Stack: ..., value -> ..., result.word1, result.word2 | 
|  class | F2IF2I - Convert float to int Stack: ..., value -> ..., result | 
|  class | F2LF2L - Convert float to long Stack: ..., value -> ..., result.word1, result.word2 | 
|  class | FADDFADD - Add floats Stack: ..., value1, value2 -> result | 
|  class | FALOADFALOAD - Load float from array Stack: ..., arrayref, index -> ..., value | 
|  class | FASTOREFASTORE - Store into float array Stack: ..., arrayref, index, value -> ... | 
|  class | FCMPGFCMPG - Compare floats: value1 > value2 Stack: ..., value1, value2 -> ..., result | 
|  class | FCMPLFCMPL - Compare floats: value1 < value2 Stack: ..., value1, value2 -> ..., result | 
|  class | FCONSTFCONST - Push 0.0, 1.0 or 2.0, other values cause an exception Stack: ... | 
|  class | FDIVFDIV - Divide floats Stack: ..., value1, value2 -> result | 
|  class | FieldInstructionSuper class for the GET/PUTxxx family of instructions. | 
|  class | FieldOrMethodSuper class for InvokeInstruction and FieldInstruction, since they have some methods in common! | 
|  class | FLOADFLOAD - Load float from local variable Stack ... | 
|  class | FMULFMUL - Multiply floats Stack: ..., value1, value2 -> result | 
|  class | FNEGFNEG - Negate float Stack: ..., value -> ..., result | 
|  class | FREMFREM - Remainder of floats Stack: ..., value1, value2 -> result | 
|  class | FRETURNFRETURN - Return float from method Stack: ..., value -> <empty> | 
|  class | FSTOREFSTORE - Store float into local variable Stack: ..., value -> ... | 
|  class | FSUBFSUB - Substract floats Stack: ..., value1, value2 -> result | 
|  class | GETFIELDGETFIELD - Fetch field from object Stack: ..., objectref -> ..., value OR Stack: ..., objectref -> ..., value.word1, value.word2 | 
|  class | GETSTATICGETSTATIC - Fetch static field from class Stack: ..., -> ..., value OR Stack: ..., -> ..., value.word1, value.word2 | 
|  class | GOTOGOTO - Branch always (to relative offset, not absolute address) | 
|  class | GOTO_WGOTO_W - Branch always (to relative offset, not absolute address) | 
|  class | GotoInstructionSuper class for GOTO | 
|  class | I2BI2B - Convert int to byte Stack: ..., value -> ..., result | 
|  class | I2CI2C - Convert int to char Stack: ..., value -> ..., result | 
|  class | I2DI2D - Convert int to double Stack: ..., value -> ..., result.word1, result.word2 | 
|  class | I2FI2F - Convert int to float Stack: ..., value -> ..., result | 
|  class | I2LI2L - Convert int to long Stack: ..., value -> ..., result.word1, result.word2 | 
|  class | I2SI2S - Convert int to short Stack: ..., value -> ..., result | 
|  class | IADDIADD - Add ints Stack: ..., value1, value2 -> result | 
|  class | IALOADIALOAD - Load int from array Stack: ..., arrayref, index -> ..., value | 
|  class | IANDIAND - Bitwise AND int Stack: ..., value1, value2 -> ..., result | 
|  class | IASTOREIASTORE - Store into int array Stack: ..., arrayref, index, value -> ... | 
|  class | ICONSTICONST - Push value between -1, ..., 5, other values cause an exception Stack: ... | 
|  class | IDIVIDIV - Divide ints Stack: ..., value1, value2 -> result | 
|  class | IF_ACMPEQIF_ACMPEQ - Branch if reference comparison succeeds Stack: ..., value1, value2 -> ... | 
|  class | IF_ACMPNEIF_ACMPNE - Branch if reference comparison doesn't succeed Stack: ..., value1, value2 -> ... | 
|  class | IF_ICMPEQIF_ICMPEQ - Branch if int comparison succeeds Stack: ..., value1, value2 -> ... | 
|  class | IF_ICMPGEIF_ICMPGE - Branch if int comparison succeeds Stack: ..., value1, value2 -> ... | 
|  class | IF_ICMPGTIF_ICMPGT - Branch if int comparison succeeds Stack: ..., value1, value2 -> ... | 
|  class | IF_ICMPLEIF_ICMPLE - Branch if int comparison succeeds Stack: ..., value1, value2 -> ... | 
|  class | IF_ICMPLTIF_ICMPLT - Branch if int comparison succeeds Stack: ..., value1, value2 -> ... | 
|  class | IF_ICMPNEIF_ICMPNE - Branch if int comparison doesn't succeed Stack: ..., value1, value2 -> ... | 
|  class | IFEQIFEQ - Branch if int comparison with zero succeeds Stack: ..., value -> ... | 
|  class | IFGEIFGE - Branch if int comparison with zero succeeds Stack: ..., value -> ... | 
|  class | IFGTIFGT - Branch if int comparison with zero succeeds Stack: ..., value -> ... | 
|  class | IfInstructionSuper class for the IFxxx family of instructions. | 
|  class | IFLEIFLE - Branch if int comparison with zero succeeds Stack: ..., value -> ... | 
|  class | IFLTIFLT - Branch if int comparison with zero succeeds Stack: ..., value -> ... | 
|  class | IFNEIFNE - Branch if int comparison with zero succeeds Stack: ..., value -> ... | 
|  class | IFNONNULLIFNONNULL - Branch if reference is not null Stack: ..., reference -> ... | 
|  class | IFNULLIFNULL - Branch if reference is not null Stack: ..., reference -> ... | 
|  class | IINCIINC - Increment local variable by constant | 
|  class | ILOADILOAD - Load int from local variable onto stack Stack: ... | 
|  class | IMPDEP1IMPDEP1 - Implementation dependent | 
|  class | IMPDEP2IMPDEP2 - Implementation dependent | 
|  class | IMULIMUL - Multiply ints Stack: ..., value1, value2 -> result | 
|  class | INEGINEG - Negate int Stack: ..., value -> ..., result | 
|  class | INSTANCEOFINSTANCEOF - Determine if object is of given type Stack: ..., objectref -> ..., result | 
|  class | InvokeInstructionSuper class for the INVOKExxx family of instructions. | 
|  class | INVOKEINTERFACEINVOKEINTERFACE - Invoke interface method Stack: ..., objectref, [arg1, [arg2 ...]] | 
|  class | INVOKESPECIALINVOKESPECIAL - Invoke instance method; special handling for superclass, private and instance initialization method invocations Stack: ..., objectref, [arg1, [arg2 ...]] | 
|  class | INVOKESTATICINVOKESTATIC - Invoke a class (static) method Stack: ..., [arg1, [arg2 ...]] | 
|  class | INVOKEVIRTUALINVOKEVIRTUAL - Invoke instance method; dispatch based on class Stack: ..., objectref, [arg1, [arg2 ...]] | 
|  class | IORIOR - Bitwise OR int Stack: ..., value1, value2 -> ..., result | 
|  class | IREMIREM - Remainder of int Stack: ..., value1, value2 -> result | 
|  class | IRETURNIRETURN - Return int from method Stack: ..., value -> <empty> | 
|  class | ISHLISHL - Arithmetic shift left int Stack: ..., value1, value2 -> ..., result | 
|  class | ISHRISHR - Arithmetic shift right int Stack: ..., value1, value2 -> ..., result | 
|  class | ISTOREISTORE - Store int from stack into local variable Stack: ..., value -> ... | 
|  class | ISUBISUB - Substract ints Stack: ..., value1, value2 -> result | 
|  class | IUSHRIUSHR - Logical shift right int Stack: ..., value1, value2 -> ..., result | 
|  class | IXORIXOR - Bitwise XOR int Stack: ..., value1, value2 -> ..., result | 
|  class | JSRJSR - Jump to subroutine | 
|  class | JSR_WJSR_W - Jump to subroutine | 
|  class | JsrInstructionSuper class for JSR - Jump to subroutine | 
|  class | L2DL2D - Convert long to double Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 | 
|  class | L2FL2F - Convert long to float Stack: ..., value.word1, value.word2 -> ..., result | 
|  class | L2IL2I - Convert long to int Stack: ..., value.word1, value.word2 -> ..., result | 
|  class | LADDLADD - Add longs Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | LALOADLALOAD - Load long from array Stack: ..., arrayref, index -> ..., value1, value2 | 
|  class | LANDLAND - Bitwise AND longs Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | LASTORELASTORE - Store into long array Stack: ..., arrayref, index, value.word1, value.word2 -> ... | 
|  class | LCMPLCMP - Compare longs: Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result <= -1, 0, 1> | 
|  class | LCONSTLCONST - Push 0 or 1, other values cause an exception Stack: ... | 
|  class | LDCLDC - Push item from constant pool. | 
|  class | LDC_WLDC_W - Push item from constant pool (wide index) Stack: ... | 
|  class | LDC2_WLDC2_W - Push long or double from constant pool Stack: ... | 
|  class | LDIVLDIV - Divide longs Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | LLOADLLOAD - Load long from local variable Stack ... | 
|  class | LMULLMUL - Multiply longs Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | LNEGLNEG - Negate long Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 | 
|  class | LoadInstructionDenotes an unparameterized instruction to load a value from a local variable, e.g. | 
|  class | LocalVariableInstructionAbstract super class for instructions dealing with local variables. | 
|  class | LOOKUPSWITCHLOOKUPSWITCH - Switch with unordered set of values | 
|  class | LORLOR - Bitwise OR long Stack: ..., value1, value2 -> ..., result | 
|  class | LREMLREM - Remainder of long Stack: ..., value1, value2 -> result | 
|  class | LRETURNLRETURN - Return long from method Stack: ..., value.word1, value.word2 -> <empty> | 
|  class | LSHLLSHL - Arithmetic shift left long Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2 | 
|  class | LSHRLSHR - Arithmetic shift right long Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2 | 
|  class | LSTORELSTORE - Store long into local variable Stack: ..., value.word1, value.word2 -> ... | 
|  class | LSUBLSUB - Substract longs Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -> ..., result.word1, result.word2 | 
|  class | LUSHRLUSHR - Logical shift right long Stack: ..., value1, value2 -> ..., result | 
|  class | LXORLXOR - Bitwise XOR long Stack: ..., value1, value2 -> ..., result | 
|  class | MONITORENTERMONITORENTER - Enter monitor for object Stack: ..., objectref -> ... | 
|  class | MONITOREXITMONITOREXIT - Exit monitor for object Stack: ..., objectref -> ... | 
|  class | MULTIANEWARRAYMULTIANEWARRAY - Create new mutidimensional array of references Stack: ..., count1, [count2, ...] | 
|  class | NEWNEW - Create new object Stack: ... | 
|  class | NEWARRAYNEWARRAY - Create new array of basic type (int, short, ...) | 
|  class | NOPNOP - Do nothing | 
|  class | POPPOP - Pop top operand stack word Stack: ..., word -> ... | 
|  class | POP2POP2 - Pop two top operand stack words Stack: ..., word2, word1 -> ... | 
|  class | PUTFIELDPUTFIELD - Put field in object Stack: ..., objectref, value -> ... | 
|  class | PUTSTATICPUTSTATIC - Put static field in class Stack: ..., value -> ... | 
|  class | RETRET - Return from subroutine Stack: ..., -> ..., address | 
|  class | RETURNRETURN - Return from void method Stack: ... | 
|  class | ReturnInstructionSuper class for the xRETURN family of instructions. | 
|  class | SALOADSALOAD - Load short from array Stack: ..., arrayref, index -> ..., value | 
|  class | SASTORESASTORE - Store into short array Stack: ..., arrayref, index, value -> ... | 
|  class | SelectSelect - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions. | 
|  class | SIPUSHSIPUSH - Push short Stack: ... | 
|  class | StackInstructionSuper class for stack operations like DUP and POP. | 
|  class | StoreInstructionDenotes an unparameterized instruction to store a value into a local variable, e.g. | 
|  class | SWAPSWAP - Swa top operand stack word Stack: ..., word2, word1 -> ..., word1, word2 | 
|  class | TABLESWITCHTABLESWITCH - Switch within given range of values, i.e., low..high | 
| Fields in org.apache.bcel.generic declared as Instruction | |
| static Instruction | InstructionConstants.NOPPredefined instruction objects | 
| static Instruction | InstructionConstants.ACONST_NULL | 
| static Instruction | InstructionConstants.ICONST_M1 | 
| static Instruction | InstructionConstants.ICONST_0 | 
| static Instruction | InstructionConstants.ICONST_1 | 
| static Instruction | InstructionConstants.ICONST_2 | 
| static Instruction | InstructionConstants.ICONST_3 | 
| static Instruction | InstructionConstants.ICONST_4 | 
| static Instruction | InstructionConstants.ICONST_5 | 
| static Instruction | InstructionConstants.LCONST_0 | 
| static Instruction | InstructionConstants.LCONST_1 | 
| static Instruction | InstructionConstants.FCONST_0 | 
| static Instruction | InstructionConstants.FCONST_1 | 
| static Instruction | InstructionConstants.FCONST_2 | 
| static Instruction | InstructionConstants.DCONST_0 | 
| static Instruction | InstructionConstants.DCONST_1 | 
| static Instruction | InstructionConstants.LCMP | 
| static Instruction | InstructionConstants.FCMPL | 
| static Instruction | InstructionConstants.FCMPG | 
| static Instruction | InstructionConstants.DCMPL | 
| static Instruction | InstructionConstants.DCMPG | 
| static Instruction | InstructionConstants.ARRAYLENGTH | 
| static Instruction | InstructionConstants.ATHROW | 
| static Instruction | InstructionConstants.MONITORENTER | 
| static Instruction | InstructionConstants.MONITOREXIT | 
| static Instruction[] | InstructionConstants.INSTRUCTIONSGet object via its opcode, for immutable instructions like branch instructions entries are set to null. | 
| Methods in org.apache.bcel.generic that return Instruction | |
|  Instruction | SWITCH.getInstruction() | 
|  Instruction | PUSH.getInstruction() | 
|  Instruction[] | InstructionList.getInstructions() | 
|  Instruction | InstructionHandle.getInstruction() | 
|  Instruction | InstructionHandle.swapInstruction(Instruction i)Temporarily swap the current instruction, without disturbing anything. | 
|  Instruction | InstructionFactory.createConstant(java.lang.Object value)Uses PUSH to push a constant value onto the stack. | 
|  Instruction | InstructionFactory.createAppend(Type type) | 
| static Instruction | InstructionFactory.createThis()Create reference to `this' | 
|  Instruction | InstructionFactory.createCast(Type src_type,
           Type dest_type)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. | 
|  Instruction | InstructionFactory.createNewArray(Type t,
               short dim)Create new array of given size and type. | 
| static Instruction | InstructionFactory.createNull(Type type)Create "null" value for reference types, 0 for basic types like int | 
|  Instruction | Instruction.copy()Use with caution, since `BranchInstruction's have a `target' reference which is not copied correctly (only basic types are). | 
| static Instruction | Instruction.readInstruction(ByteSequence bytes)Read an instruction from (byte code) input stream and return the appropiate object. | 
| Methods in org.apache.bcel.generic with parameters of type Instruction | |
|  InstructionHandle | InstructionList.append(Instruction i,
       InstructionList il)Append another list after instruction i contained in this list. | 
|  InstructionHandle | InstructionList.append(Instruction i)Append an instruction to the end of this list. | 
|  InstructionHandle | InstructionList.append(Instruction i,
       Instruction j)Append a single instruction j after another instruction i, which must be in this list of course! | 
|  InstructionHandle | InstructionList.append(Instruction i,
       Instruction j)Append a single instruction j after another instruction i, which must be in this list of course! | 
|  InstructionHandle | InstructionList.append(Instruction i,
       CompoundInstruction c)Append a compound instruction, after instruction i. | 
|  InstructionHandle | InstructionList.append(InstructionHandle ih,
       Instruction i)Append an instruction after instruction (handle) ih contained in this list. | 
|  InstructionHandle | InstructionList.insert(Instruction i,
       InstructionList il)Insert another list before Instruction i contained in this list. | 
|  InstructionHandle | InstructionList.insert(Instruction i)Insert an instruction at start of this list. | 
|  InstructionHandle | InstructionList.insert(Instruction i,
       Instruction j)Insert a single instruction j before another instruction i, which must be in this list of course! | 
|  InstructionHandle | InstructionList.insert(Instruction i,
       Instruction j)Insert a single instruction j before another instruction i, which must be in this list of course! | 
|  InstructionHandle | InstructionList.insert(Instruction i,
       CompoundInstruction c)Insert a compound instruction before instruction i. | 
|  InstructionHandle | InstructionList.insert(InstructionHandle ih,
       Instruction i)Insert an instruction before instruction (handle) ih contained in this list. | 
|  void | InstructionList.delete(Instruction i)Remove instruction from this list. | 
|  void | InstructionList.delete(Instruction from,
       Instruction to)Remove instructions from instruction `from' to instruction `to' contained in this list. | 
|  void | InstructionList.delete(Instruction from,
       Instruction to)Remove instructions from instruction `from' to instruction `to' contained in this list. | 
|  boolean | InstructionList.contains(Instruction i) | 
|  void | InstructionHandle.setInstruction(Instruction i)Replace current instruction contained in this handle. | 
|  Instruction | InstructionHandle.swapInstruction(Instruction i)Temporarily swap the current instruction, without disturbing anything. | 
|  boolean | InstructionComparator.equals(Instruction i1,
       Instruction i2) | 
|  boolean | InstructionComparator.equals(Instruction i1,
       Instruction i2) | 
|  void | BranchHandle.setInstruction(Instruction i)Set new contents. | 
| Constructors in org.apache.bcel.generic with parameters of type Instruction | |
| InstructionList(Instruction i)Create instruction list containing one instruction. | |
| InstructionHandle(Instruction i) | |
| 
 | |||||||||||
| PREV NEXT | FRAMES NO FRAMES | ||||||||||