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

Packages that use StackProducer
Package
Description
This package contains the "generic" part of the Byte Code Engineering Library, i.e., classes to dynamically modify class objects and byte code instructions.
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

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

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