bcel API: Uses of Interface org.apache.bcel.generic.StackProducer

Uses of Interface

Packages that use StackProducer
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.verifier.structurals Provides a PassVerifier class mostly used internally by JustIce, yielding a control flow graph for public use as a nice side effect. 

Uses of StackProducer in org.apache.bcel.generic

Subinterfaces of StackProducer in org.apache.bcel.generic
 interface ConstantPushInstruction
          Denotes a push instruction that produces a literal on the stack such as SIPUSH, BIPUSH, ICONST, etc.
 interface PushInstruction
          Denotes an unparameterized instruction to produce a value on top of the stack, such as ILOAD, LDC, SIPUSH, DUP, ICONST, etc.

Classes in org.apache.bcel.generic that implement StackProducer
 class AALOAD
          AALOAD - Load reference from array
          ACONST_NULL - Push null reference
 class ALOAD
          ALOAD - Load reference from local variable
          ANEWARRAY - Create new array of references
 class ArithmeticInstruction
          Super class for the family of arithmetic instructions.
          ARRAYLENGTH - Get length of array
 class BALOAD
          BALOAD - Load byte or boolean from array
 class BIPUSH
          BIPUSH - Push byte on stack
 class CALOAD
          CALOAD - Load char from array
          CHECKCAST - Check whether object is of given type
 class ConversionInstruction
          Super class for the x2y family of instructions.
 class D2F
          D2F - Convert double to float
 class D2I
          D2I - Convert double to int
 class D2L
          D2L - Convert double to long
 class DADD
          DADD - Add doubles
 class DALOAD
          DALOAD - Load double from array
 class DCMPG
          DCMPG - Compare doubles: value1 > value2
 class DCMPL
          DCMPL - Compare doubles: value1 < value2
 class DCONST
          DCONST - Push 0.0 or 1.0, other values cause an exception
 class DDIV
          DDIV - Divide doubles
 class DLOAD
          DLOAD - Load double from local variable
 class DMUL
          DMUL - Multiply doubles
 class DNEG
          DNEG - Negate double
 class DREM
          DREM - Remainder of doubles
 class DSUB
          DSUB - Substract doubles
 class DUP
          DUP - Duplicate top operand stack word
 class DUP2
          DUP2 - Duplicate two top operand stack words
 class F2D
          F2D - Convert float to double
 class F2I
          F2I - Convert float to int
 class F2L
          F2L - Convert float to long
 class FADD
          FADD - Add floats
 class FALOAD
          FALOAD - Load float from array
 class FCMPG
          FCMPG - Compare floats: value1 > value2
 class FCMPL
          FCMPL - Compare floats: value1 < value2
 class FCONST
          FCONST - Push 0.0, 1.0 or 2.0, other values cause an exception
 class FDIV
          FDIV - Divide floats
 class FLOAD
          FLOAD - Load float from local variable
 class FMUL
          FMUL - Multiply floats
 class FNEG
          FNEG - Negate float
 class FREM
          FREM - Remainder of floats
 class FSUB
          FSUB - Substract floats
          GETFIELD - Fetch field from object
          GETSTATIC - Fetch static field from class
 class I2B
          I2B - Convert int to byte
 class I2C
          I2C - Convert int to char
 class I2D
          I2D - Convert int to double
 class I2F
          I2F - Convert int to float
 class I2L
          I2L - Convert int to long
 class I2S
          I2S - Convert int to short
 class IADD
          IADD - Add ints
 class IALOAD
          IALOAD - Load int from array
 class IAND
          IAND - Bitwise AND int
 class ICONST
          ICONST - Push value between -1, ..., 5, other values cause an exception
 class IDIV
          IDIV - Divide ints
 class ILOAD
          ILOAD - Load int from local variable onto stack
 class IMUL
          IMUL - Multiply ints
 class INEG
          INEG - Negate int
          INSTANCEOF - Determine if object is of given type
 class InvokeInstruction
          Super class for the INVOKExxx family of instructions.
          INVOKEINTERFACE - Invoke interface method
          INVOKESPECIAL - Invoke instance method; special handling for superclass, private and instance initialization method invocations
          INVOKESTATIC - Invoke a class (static) method
          INVOKEVIRTUAL - Invoke instance method; dispatch based on class
 class IOR
          IOR - Bitwise OR int
 class IREM
          IREM - Remainder of int
 class ISHL
          ISHL - Arithmetic shift left int
 class ISHR
          ISHR - Arithmetic shift right int
 class ISUB
          ISUB - Substract ints
 class IUSHR
          IUSHR - Logical shift right int
 class IXOR
          IXOR - Bitwise XOR int
 class JSR
          JSR - Jump to subroutine
 class JSR_W
          JSR_W - Jump to subroutine
 class JsrInstruction
          Super class for JSR - Jump to subroutine
 class L2D
          L2D - Convert long to double
 class L2F
          L2F - Convert long to float
 class L2I
          L2I - Convert long to int
 class LADD
          LADD - Add longs
 class LALOAD
          LALOAD - Load long from array
 class LAND
          LAND - Bitwise AND longs
 class LCONST
          LCONST - Push 0 or 1, other values cause an exception
 class LDC
          LDC - Push item from constant pool.
 class LDC_W
          LDC_W - Push item from constant pool (wide index)
 class LDC2_W
          LDC2_W - Push long or double from constant pool
 class LDIV
          LDIV - Divide longs
 class LLOAD
          LLOAD - Load long from local variable
 class LMUL
          LMUL - Multiply longs
 class LNEG
          LNEG - Negate long
 class LoadInstruction
          Denotes an unparameterized instruction to load a value from a local variable, e.g.
          LOOKUPSWITCH - Switch with unordered set of values
 class LOR
          LOR - Bitwise OR long
 class LREM
          LREM - Remainder of long
 class LSHL
          LSHL - Arithmetic shift left long
 class LSHR
          LSHR - Arithmetic shift right long
 class LSUB
          LSUB - Substract longs
 class LUSHR
          LUSHR - Logical shift right long
 class LXOR
          LXOR - Bitwise XOR long
 class NEW
          NEW - Create new object
          NEWARRAY - Create new array of basic type (int, short, ...)
 class SALOAD
          SALOAD - Load short from array
 class Select
          Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.
 class SIPUSH
          SIPUSH - Push short
 class SWAP
          SWAP - Swa top operand stack word
          TABLESWITCH - Switch within given range of values, i.e., low..high

Methods in org.apache.bcel.generic with parameters of type StackProducer
 void EmptyVisitor.visitStackProducer(StackProducer obj)
 void Visitor.visitStackProducer(StackProducer obj)

Uses of StackProducer in org.apache.bcel.verifier.structurals

Methods in org.apache.bcel.verifier.structurals with parameters of type StackProducer
 void InstConstraintVisitor.visitStackProducer(StackProducer o)
          Ensures the general preconditions of a StackProducer instance.