bcel API: Uses of Package org.apache.bcel.generic

Uses of Package
org.apache.bcel.generic

Packages that use org.apache.bcel.generic
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. 
org.apache.bcel.util This package contains utility classes for the Byte Code Engineering Library, namely:  
org.apache.bcel.verifier.statics Provides PassVerifier classes used internally by JustIce. 
org.apache.bcel.verifier.structurals Provides a PassVerifier class mostly used internally by JustIce, yielding a control flow graph for public use as a nice side effect. 
 

Classes in org.apache.bcel.generic used by org.apache.bcel.generic
AALOAD
          AALOAD - Load reference from array
AASTORE
          AASTORE - Store into reference array
ACONST_NULL
          ACONST_NULL - Push null reference
AllocationInstruction
          Denote family of instructions that allocates space in the heap.
ALOAD
          ALOAD - Load reference from local variable
ANEWARRAY
          ANEWARRAY - Create new array of references
ARETURN
          ARETURN - Return reference from method
ArithmeticInstruction
          Super class for the family of arithmetic instructions.
ArrayInstruction
          Super class for instructions dealing with array access such as IALOAD.
ARRAYLENGTH
          ARRAYLENGTH - Get length of array
ArrayType
          Denotes array type, such as int[][]
ASTORE
          ASTORE - Store reference into local variable
ATHROW
          ATHROW - Throw exception
BALOAD
          BALOAD - Load byte or boolean from array
BasicType
          Denotes basic type such as int.
BASTORE
          BASTORE - Store into byte or boolean array
BIPUSH
          BIPUSH - Push byte on stack
BranchHandle
          BranchHandle is returned by specialized InstructionList.append() whenever a BranchInstruction is appended.
BranchInstruction
          Abstract super class for branching instructions like GOTO, IFEQ, etc..
BREAKPOINT
          BREAKPOINT
CALOAD
          CALOAD - Load char from array
CASTORE
          CASTORE - Store into char array
CHECKCAST
          CHECKCAST - Check whether object is of given type
ClassGen
          Template class for building up a java class.
ClassObserver
          Implement this interface if you're interested in changes to a ClassGen object and register yourself with addObserver().
CodeExceptionGen
          This class represents an exception handler, i.e., specifies the region where a handler is active and an instruction where the actual handling is done.
CompoundInstruction
          Wrapper class for `compound' operations, virtual instructions that don't exist as byte code, but give a useful meaning.
ConstantPoolGen
          This class is used to build up a constant pool.
ConstantPushInstruction
          Denotes a push instruction that produces a literal on the stack such as SIPUSH, BIPUSH, ICONST, etc.
ConversionInstruction
          Super class for the x2y family of instructions.
CPInstruction
          Abstract super class for instructions that use an index into the constant pool such as LDC, INVOKEVIRTUAL, etc.
D2F
          D2F - Convert double to float
D2I
          D2I - Convert double to int
D2L
          D2L - Convert double to long
DADD
          DADD - Add doubles
DALOAD
          DALOAD - Load double from array
DASTORE
          DASTORE - Store into double array
DCMPG
          DCMPG - Compare doubles: value1 > value2
DCMPL
          DCMPL - Compare doubles: value1 < value2
DCONST
          DCONST - Push 0.0 or 1.0, other values cause an exception
DDIV
          DDIV - Divide doubles
DLOAD
          DLOAD - Load double from local variable
DMUL
          DMUL - Multiply doubles
DNEG
          DNEG - Negate double
DREM
          DREM - Remainder of doubles
DRETURN
          DRETURN - Return double from method
DSTORE
          DSTORE - Store double into local variable
DSUB
          DSUB - Substract doubles
DUP
          DUP - Duplicate top operand stack word
DUP_X1
          DUP_X1 - Duplicate top operand stack word and put two down
DUP_X2
          DUP_X2 - Duplicate top operand stack word and put three down
DUP2
          DUP2 - Duplicate two top operand stack words
DUP2_X1
          DUP2_X1 - Duplicate two top operand stack words and put three down
DUP2_X2
          DUP2_X2 - Duplicate two top operand stack words and put four down
ExceptionThrower
          Denote an instruction that may throw a run-time or a linking exception (or both) during execution.
F2D
          F2D - Convert float to double
F2I
          F2I - Convert float to int
F2L
          F2L - Convert float to long
FADD
          FADD - Add floats
FALOAD
          FALOAD - Load float from array
FASTORE
          FASTORE - Store into float array
FCMPG
          FCMPG - Compare floats: value1 > value2
FCMPL
          FCMPL - Compare floats: value1 < value2
FCONST
          FCONST - Push 0.0, 1.0 or 2.0, other values cause an exception
FDIV
          FDIV - Divide floats
FieldGen
          Template class for building up a field.
FieldGenOrMethodGen
          Super class for FieldGen and MethodGen objects, since they have some methods in common!
FieldInstruction
          Super class for the GET/PUTxxx family of instructions.
FieldObserver
          Imnplement this interface if you're interested in changes to a FieldGen object and register yourself with addObserver().
FieldOrMethod
          Super class for InvokeInstruction and FieldInstruction, since they have some methods in common!
FLOAD
          FLOAD - Load float from local variable
FMUL
          FMUL - Multiply floats
FNEG
          FNEG - Negate float
FREM
          FREM - Remainder of floats
FRETURN
          FRETURN - Return float from method
FSTORE
          FSTORE - Store float into local variable
FSUB
          FSUB - Substract floats
GETFIELD
          GETFIELD - Fetch field from object
GETSTATIC
          GETSTATIC - Fetch static field from class
GOTO
          GOTO - Branch always (to relative offset, not absolute address)
GOTO_W
          GOTO_W - Branch always (to relative offset, not absolute address)
GotoInstruction
          Super class for GOTO
I2B
          I2B - Convert int to byte
I2C
          I2C - Convert int to char
I2D
          I2D - Convert int to double
I2F
          I2F - Convert int to float
I2L
          I2L - Convert int to long
I2S
          I2S - Convert int to short
IADD
          IADD - Add ints
IALOAD
          IALOAD - Load int from array
IAND
          IAND - Bitwise AND int
IASTORE
          IASTORE - Store into int array
ICONST
          ICONST - Push value between -1, ..., 5, other values cause an exception
IDIV
          IDIV - Divide ints
IF_ACMPEQ
          IF_ACMPEQ - Branch if reference comparison succeeds
IF_ACMPNE
          IF_ACMPNE - Branch if reference comparison doesn't succeed
IF_ICMPEQ
          IF_ICMPEQ - Branch if int comparison succeeds
IF_ICMPGE
          IF_ICMPGE - Branch if int comparison succeeds
IF_ICMPGT
          IF_ICMPGT - Branch if int comparison succeeds
IF_ICMPLE
          IF_ICMPLE - Branch if int comparison succeeds
IF_ICMPLT
          IF_ICMPLT - Branch if int comparison succeeds
IF_ICMPNE
          IF_ICMPNE - Branch if int comparison doesn't succeed
IFEQ
          IFEQ - Branch if int comparison with zero succeeds
IFGE
          IFGE - Branch if int comparison with zero succeeds
IFGT
          IFGT - Branch if int comparison with zero succeeds
IfInstruction
          Super class for the IFxxx family of instructions.
IFLE
          IFLE - Branch if int comparison with zero succeeds
IFLT
          IFLT - Branch if int comparison with zero succeeds
IFNE
          IFNE - Branch if int comparison with zero succeeds
IFNONNULL
          IFNONNULL - Branch if reference is not null
IFNULL
          IFNULL - Branch if reference is not null
IINC
          IINC - Increment local variable by constant
ILOAD
          ILOAD - Load int from local variable onto stack
IMPDEP1
          IMPDEP1 - Implementation dependent
IMPDEP2
          IMPDEP2 - Implementation dependent
IMUL
          IMUL - Multiply ints
IndexedInstruction
          Denote entity that refers to an index, e.g.
INEG
          INEG - Negate int
INSTANCEOF
          INSTANCEOF - Determine if object is of given type
Instruction
          Abstract super class for all Java byte codes.
InstructionConstants
          This interface contains shareable instruction objects.
InstructionConstants.Clinit
           
InstructionHandle
          Instances of this class give users a handle to the instructions contained in an InstructionList.
InstructionList
          This class is a container for a list of Instruction objects.
InstructionListObserver
          Implement this interface if you're interested in changes to an InstructionList object and register yourself with addObserver().
InstructionTargeter
          Denote that a class targets InstructionHandles within an InstructionList.
InvokeInstruction
          Super class for the INVOKExxx family of instructions.
INVOKEINTERFACE
          INVOKEINTERFACE - Invoke interface method
INVOKESPECIAL
          INVOKESPECIAL - Invoke instance method; special handling for superclass, private and instance initialization method invocations
INVOKESTATIC
          INVOKESTATIC - Invoke a class (static) method
INVOKEVIRTUAL
          INVOKEVIRTUAL - Invoke instance method; dispatch based on class
IOR
          IOR - Bitwise OR int
IREM
          IREM - Remainder of int
IRETURN
          IRETURN - Return int from method
ISHL
          ISHL - Arithmetic shift left int
ISHR
          ISHR - Arithmetic shift right int
ISTORE
          ISTORE - Store int from stack into local variable
ISUB
          ISUB - Substract ints
IUSHR
          IUSHR - Logical shift right int
IXOR
          IXOR - Bitwise XOR int
JSR
          JSR - Jump to subroutine
JSR_W
          JSR_W - Jump to subroutine
JsrInstruction
          Super class for JSR - Jump to subroutine
L2D
          L2D - Convert long to double
L2F
          L2F - Convert long to float
L2I
          L2I - Convert long to int
LADD
          LADD - Add longs
LALOAD
          LALOAD - Load long from array
LAND
          LAND - Bitwise AND longs
LASTORE
          LASTORE - Store into long array
LCMP
          LCMP - Compare longs:
LCONST
          LCONST - Push 0 or 1, other values cause an exception
LDC
          LDC - Push item from constant pool.
LDC2_W
          LDC2_W - Push long or double from constant pool
LDIV
          LDIV - Divide longs
LineNumberGen
          This class represents a line number within a method, i.e., give an instruction a line number corresponding to the source code line.
LLOAD
          LLOAD - Load long from local variable
LMUL
          LMUL - Multiply longs
LNEG
          LNEG - Negate long
LoadClass
          Denotes that an instruction may start the process of loading and resolving the referenced class in the Virtual Machine.
LoadInstruction
          Denotes an unparameterized instruction to load a value from a local variable, e.g.
LocalVariableGen
          This class represents a local variable within a method.
LocalVariableInstruction
          Abstract super class for instructions dealing with local variables.
LOOKUPSWITCH
          LOOKUPSWITCH - Switch with unordered set of values
LOR
          LOR - Bitwise OR long
LREM
          LREM - Remainder of long
LRETURN
          LRETURN - Return long from method
LSHL
          LSHL - Arithmetic shift left long
LSHR
          LSHR - Arithmetic shift right long
LSTORE
          LSTORE - Store long into local variable
LSUB
          LSUB - Substract longs
LUSHR
          LUSHR - Logical shift right long
LXOR
          LXOR - Bitwise XOR long
MethodGen
          Template class for building up a method.
MethodObserver
          Implement this interface if you're interested in changes to a MethodGen object and register yourself with addObserver().
MONITORENTER
          MONITORENTER - Enter monitor for object
MONITOREXIT
          MONITOREXIT - Exit monitor for object
MULTIANEWARRAY
          MULTIANEWARRAY - Create new mutidimensional array of references
NamedAndTyped
          Denote entity that has both name and type.
NEW
          NEW - Create new object
NEWARRAY
          NEWARRAY - Create new array of basic type (int, short, ...)
NOP
          NOP - Do nothing
ObjectType
          Denotes reference such as java.lang.String.
POP
          POP - Pop top operand stack word
POP2
          POP2 - Pop two top operand stack words
PopInstruction
          Denotes an unparameterized instruction to pop a value on top from the stack, such as ISTORE, POP, PUTSTATIC.
PushInstruction
          Denotes an unparameterized instruction to produce a value on top of the stack, such as ILOAD, LDC, SIPUSH, DUP, ICONST, etc.
PUTFIELD
          PUTFIELD - Put field in object
PUTSTATIC
          PUTSTATIC - Put static field in class
ReferenceType
          Super class for objects and arrays.
RET
          RET - Return from subroutine
RETURN
          RETURN - Return from void method
ReturnaddressType
          Returnaddress, the type JSR or JSR_W instructions push upon the stack.
ReturnInstruction
          Super class for the xRETURN family of instructions.
SALOAD
          SALOAD - Load short from array
SASTORE
          SASTORE - Store into short array
Select
          Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.
SIPUSH
          SIPUSH - Push short
StackConsumer
          Denote an instruction that may consume a value from the stack.
StackInstruction
          Super class for stack operations like DUP and POP.
StackProducer
          Denote an instruction that may produce a value on top of the stack (this excludes DUP_X1, e.g.)
StoreInstruction
          Denotes an unparameterized instruction to store a value into a local variable, e.g.
SWAP
          SWAP - Swa top operand stack word
TABLESWITCH
          TABLESWITCH - Switch within given range of values, i.e., low..high
TargetLostException
          Thrown by InstructionList.remove() when one or multiple disposed instruction are still being referenced by a InstructionTargeter object.
Type
          Abstract super class for all possible java types, namely basic types such as int, object types like String and array types, e.g.
TypedInstruction
          Get the type associated with an instruction, int for ILOAD, or the type of the field of a PUTFIELD instruction, e.g..
UnconditionalBranch
          Denotes an instruction to perform an unconditional branch, i.e., GOTO, JSR.
VariableLengthInstruction
          Denotes an instruction to be a variable length instruction, such as GOTO, JSR, LOOKUPSWITCH and TABLESWITCH.
Visitor
          Interface implementing the Visitor pattern programming style.
 

Classes in org.apache.bcel.generic used by org.apache.bcel.util
InstructionHandle
          Instances of this class give users a handle to the instructions contained in an InstructionList.
InstructionList
          This class is a container for a list of Instruction objects.
 

Classes in org.apache.bcel.generic used by org.apache.bcel.verifier.statics
Type
          Abstract super class for all possible java types, namely basic types such as int, object types like String and array types, e.g.
 

Classes in org.apache.bcel.generic used by org.apache.bcel.verifier.structurals
AALOAD
          AALOAD - Load reference from array
AASTORE
          AASTORE - Store into reference array
ACONST_NULL
          ACONST_NULL - Push null reference
ALOAD
          ALOAD - Load reference from local variable
ANEWARRAY
          ANEWARRAY - Create new array of references
ARETURN
          ARETURN - Return reference from method
ARRAYLENGTH
          ARRAYLENGTH - Get length of array
ASTORE
          ASTORE - Store reference into local variable
ATHROW
          ATHROW - Throw exception
BALOAD
          BALOAD - Load byte or boolean from array
BASTORE
          BASTORE - Store into byte or boolean array
BIPUSH
          BIPUSH - Push byte on stack
BREAKPOINT
          BREAKPOINT
CALOAD
          CALOAD - Load char from array
CASTORE
          CASTORE - Store into char array
CHECKCAST
          CHECKCAST - Check whether object is of given type
ConstantPoolGen
          This class is used to build up a constant pool.
CPInstruction
          Abstract super class for instructions that use an index into the constant pool such as LDC, INVOKEVIRTUAL, etc.
D2F
          D2F - Convert double to float
D2I
          D2I - Convert double to int
D2L
          D2L - Convert double to long
DADD
          DADD - Add doubles
DALOAD
          DALOAD - Load double from array
DASTORE
          DASTORE - Store into double array
DCMPG
          DCMPG - Compare doubles: value1 > value2
DCMPL
          DCMPL - Compare doubles: value1 < value2
DCONST
          DCONST - Push 0.0 or 1.0, other values cause an exception
DDIV
          DDIV - Divide doubles
DLOAD
          DLOAD - Load double from local variable
DMUL
          DMUL - Multiply doubles
DNEG
          DNEG - Negate double
DREM
          DREM - Remainder of doubles
DRETURN
          DRETURN - Return double from method
DSTORE
          DSTORE - Store double into local variable
DSUB
          DSUB - Substract doubles
DUP
          DUP - Duplicate top operand stack word
DUP_X1
          DUP_X1 - Duplicate top operand stack word and put two down
DUP_X2
          DUP_X2 - Duplicate top operand stack word and put three down
DUP2
          DUP2 - Duplicate two top operand stack words
DUP2_X1
          DUP2_X1 - Duplicate two top operand stack words and put three down
DUP2_X2
          DUP2_X2 - Duplicate two top operand stack words and put four down
EmptyVisitor
          Supplies empty method bodies to be overridden by subclasses.
F2D
          F2D - Convert float to double
F2I
          F2I - Convert float to int
F2L
          F2L - Convert float to long
FADD
          FADD - Add floats
FALOAD
          FALOAD - Load float from array
FASTORE
          FASTORE - Store into float array
FCMPG
          FCMPG - Compare floats: value1 > value2
FCMPL
          FCMPL - Compare floats: value1 < value2
FCONST
          FCONST - Push 0.0, 1.0 or 2.0, other values cause an exception
FDIV
          FDIV - Divide floats
FieldInstruction
          Super class for the GET/PUTxxx family of instructions.
FLOAD
          FLOAD - Load float from local variable
FMUL
          FMUL - Multiply floats
FNEG
          FNEG - Negate float
FREM
          FREM - Remainder of floats
FRETURN
          FRETURN - Return float from method
FSTORE
          FSTORE - Store float into local variable
FSUB
          FSUB - Substract floats
GETFIELD
          GETFIELD - Fetch field from object
GETSTATIC
          GETSTATIC - Fetch static field from class
GOTO
          GOTO - Branch always (to relative offset, not absolute address)
GOTO_W
          GOTO_W - Branch always (to relative offset, not absolute address)
I2B
          I2B - Convert int to byte
I2C
          I2C - Convert int to char
I2D
          I2D - Convert int to double
I2F
          I2F - Convert int to float
I2L
          I2L - Convert int to long
I2S
          I2S - Convert int to short
IADD
          IADD - Add ints
IALOAD
          IALOAD - Load int from array
IAND
          IAND - Bitwise AND int
IASTORE
          IASTORE - Store into int array
ICONST
          ICONST - Push value between -1, ..., 5, other values cause an exception
IDIV
          IDIV - Divide ints
IF_ACMPEQ
          IF_ACMPEQ - Branch if reference comparison succeeds
IF_ACMPNE
          IF_ACMPNE - Branch if reference comparison doesn't succeed
IF_ICMPEQ
          IF_ICMPEQ - Branch if int comparison succeeds
IF_ICMPGE
          IF_ICMPGE - Branch if int comparison succeeds
IF_ICMPGT
          IF_ICMPGT - Branch if int comparison succeeds
IF_ICMPLE
          IF_ICMPLE - Branch if int comparison succeeds
IF_ICMPLT
          IF_ICMPLT - Branch if int comparison succeeds
IF_ICMPNE
          IF_ICMPNE - Branch if int comparison doesn't succeed
IFEQ
          IFEQ - Branch if int comparison with zero succeeds
IFGE
          IFGE - Branch if int comparison with zero succeeds
IFGT
          IFGT - Branch if int comparison with zero succeeds
IFLE
          IFLE - Branch if int comparison with zero succeeds
IFLT
          IFLT - Branch if int comparison with zero succeeds
IFNE
          IFNE - Branch if int comparison with zero succeeds
IFNONNULL
          IFNONNULL - Branch if reference is not null
IFNULL
          IFNULL - Branch if reference is not null
IINC
          IINC - Increment local variable by constant
ILOAD
          ILOAD - Load int from local variable onto stack
IMPDEP1
          IMPDEP1 - Implementation dependent
IMPDEP2
          IMPDEP2 - Implementation dependent
IMUL
          IMUL - Multiply ints
INEG
          INEG - Negate int
INSTANCEOF
          INSTANCEOF - Determine if object is of given type
InstructionHandle
          Instances of this class give users a handle to the instructions contained in an InstructionList.
InvokeInstruction
          Super class for the INVOKExxx family of instructions.
INVOKEINTERFACE
          INVOKEINTERFACE - Invoke interface method
INVOKESPECIAL
          INVOKESPECIAL - Invoke instance method; special handling for superclass, private and instance initialization method invocations
INVOKESTATIC
          INVOKESTATIC - Invoke a class (static) method
INVOKEVIRTUAL
          INVOKEVIRTUAL - Invoke instance method; dispatch based on class
IOR
          IOR - Bitwise OR int
IREM
          IREM - Remainder of int
IRETURN
          IRETURN - Return int from method
ISHL
          ISHL - Arithmetic shift left int
ISHR
          ISHR - Arithmetic shift right int
ISTORE
          ISTORE - Store int from stack into local variable
ISUB
          ISUB - Substract ints
IUSHR
          IUSHR - Logical shift right int
IXOR
          IXOR - Bitwise XOR int
JSR
          JSR - Jump to subroutine
JSR_W
          JSR_W - Jump to subroutine
L2D
          L2D - Convert long to double
L2F
          L2F - Convert long to float
L2I
          L2I - Convert long to int
LADD
          LADD - Add longs
LALOAD
          LALOAD - Load long from array
LAND
          LAND - Bitwise AND longs
LASTORE
          LASTORE - Store into long array
LCMP
          LCMP - Compare longs:
LCONST
          LCONST - Push 0 or 1, other values cause an exception
LDC
          LDC - Push item from constant pool.
LDC_W
          LDC_W - Push item from constant pool (wide index)
LDC2_W
          LDC2_W - Push long or double from constant pool
LDIV
          LDIV - Divide longs
LLOAD
          LLOAD - Load long from local variable
LMUL
          LMUL - Multiply longs
LNEG
          LNEG - Negate long
LoadClass
          Denotes that an instruction may start the process of loading and resolving the referenced class in the Virtual Machine.
LoadInstruction
          Denotes an unparameterized instruction to load a value from a local variable, e.g.
LocalVariableInstruction
          Abstract super class for instructions dealing with local variables.
LOOKUPSWITCH
          LOOKUPSWITCH - Switch with unordered set of values
LOR
          LOR - Bitwise OR long
LREM
          LREM - Remainder of long
LRETURN
          LRETURN - Return long from method
LSHL
          LSHL - Arithmetic shift left long
LSHR
          LSHR - Arithmetic shift right long
LSTORE
          LSTORE - Store long into local variable
LSUB
          LSUB - Substract longs
LUSHR
          LUSHR - Logical shift right long
LXOR
          LXOR - Bitwise XOR long
MethodGen
          Template class for building up a method.
MONITORENTER
          MONITORENTER - Enter monitor for object
MONITOREXIT
          MONITOREXIT - Exit monitor for object
MULTIANEWARRAY
          MULTIANEWARRAY - Create new mutidimensional array of references
NEW
          NEW - Create new object
NEWARRAY
          NEWARRAY - Create new array of basic type (int, short, ...)
NOP
          NOP - Do nothing
ObjectType
          Denotes reference such as java.lang.String.
POP
          POP - Pop top operand stack word
POP2
          POP2 - Pop two top operand stack words
PUTFIELD
          PUTFIELD - Put field in object
PUTSTATIC
          PUTSTATIC - Put static field in class
ReferenceType
          Super class for objects and arrays.
RET
          RET - Return from subroutine
RETURN
          RETURN - Return from void method
ReturnInstruction
          Super class for the xRETURN family of instructions.
SALOAD
          SALOAD - Load short from array
SASTORE
          SASTORE - Store into short array
SIPUSH
          SIPUSH - Push short
StackConsumer
          Denote an instruction that may consume a value from the stack.
StackInstruction
          Super class for stack operations like DUP and POP.
StackProducer
          Denote an instruction that may produce a value on top of the stack (this excludes DUP_X1, e.g.)
StoreInstruction
          Denotes an unparameterized instruction to store a value into a local variable, e.g.
SWAP
          SWAP - Swa top operand stack word
TABLESWITCH
          TABLESWITCH - Switch within given range of values, i.e., low..high
Type
          Abstract super class for all possible java types, namely basic types such as int, object types like String and array types, e.g.
Visitor
          Interface implementing the Visitor pattern programming style.