Package | Description |
---|---|
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.
|
Modifier and Type | Interface and Description |
---|---|
interface |
PopInstruction
Denotes an unparameterized instruction to pop a value on top from the stack,
such as ISTORE, POP, PUTSTATIC.
|
Modifier and Type | Class and Description |
---|---|
class |
AASTORE
AASTORE - Store into reference array
Stack: ..., arrayref, index, value -> ...
|
class |
ANEWARRAY
ANEWARRAY - Create new array of references
Stack: ..., count -> ..., arrayref
|
class |
ARETURN
ARETURN - Return reference from method
Stack: ..., objectref -> <empty>
|
class |
ArithmeticInstruction
Super class for the family of arithmetic instructions.
|
class |
ARRAYLENGTH
ARRAYLENGTH - Get length of array
Stack: ..., arrayref -> ..., length
|
class |
ASTORE
ASTORE - Store reference into local variable
Stack ..., objectref -> ...
|
class |
BASTORE
BASTORE - Store into byte or boolean array
Stack: ..., arrayref, index, value -> ...
|
class |
CASTORE
CASTORE - Store into char array
Stack: ..., arrayref, index, value -> ...
|
class |
CHECKCAST
CHECKCAST - Check whether object is of given type
Stack: ..., objectref -> ..., objectref
|
class |
ConversionInstruction
Super class for the x2y family of instructions.
|
class |
D2F
D2F - Convert double to float
Stack: ..., value.word1, value.word2 -> ..., result
|
class |
D2I
D2I - Convert double to int
Stack: ..., value.word1, value.word2 -> ..., result
|
class |
D2L
D2L - Convert double to long
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
|
class |
DADD
DADD - Add doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result1.word2
|
class |
DASTORE
DASTORE - Store into double array
Stack: ..., arrayref, index, value.word1, value.word2 -> ...
|
class |
DCMPG
DCMPG - Compare doubles: value1 > value2
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result
|
class |
DCMPL
DCMPL - Compare doubles: value1 < value2
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result
|
class |
DDIV
DDIV - Divide doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
DMUL
DMUL - Multiply doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
DNEG
DNEG - Negate double
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
|
class |
DREM
DREM - Remainder of doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
DRETURN
DRETURN - Return double from method
Stack: ..., value.word1, value.word2 -> <empty>
|
class |
DSTORE
DSTORE - Store double into local variable
Stack: ..., value.word1, value.word2 -> ...
|
class |
DSUB
DSUB - Substract doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
F2D
F2D - Convert float to double
Stack: ..., value -> ..., result.word1, result.word2
|
class |
F2I
F2I - Convert float to int
Stack: ..., value -> ..., result
|
class |
F2L
F2L - Convert float to long
Stack: ..., value -> ..., result.word1, result.word2
|
class |
FADD
FADD - Add floats
Stack: ..., value1, value2 -> result
|
class |
FASTORE
FASTORE - Store into float array
Stack: ..., arrayref, index, value -> ...
|
class |
FCMPG
FCMPG - Compare floats: value1 > value2
Stack: ..., value1, value2 -> ..., result
|
class |
FCMPL
FCMPL - Compare floats: value1 < value2
Stack: ..., value1, value2 -> ..., result
|
class |
FDIV
FDIV - Divide floats
Stack: ..., value1, value2 -> result
|
class |
FMUL
FMUL - Multiply floats
Stack: ..., value1, value2 -> result
|
class |
FNEG
FNEG - Negate float
Stack: ..., value -> ..., result
|
class |
FREM
FREM - Remainder of floats
Stack: ..., value1, value2 -> result
|
class |
FRETURN
FRETURN - Return float from method
Stack: ..., value -> <empty>
|
class |
FSTORE
FSTORE - Store float into local variable
Stack: ..., value -> ...
|
class |
FSUB
FSUB - Substract floats
Stack: ..., value1, value2 -> result
|
class |
GETFIELD
GETFIELD - Fetch field from object
Stack: ..., objectref -> ..., value
OR
Stack: ..., objectref -> ..., value.word1, value.word2
|
class |
I2B
I2B - Convert int to byte
Stack: ..., value -> ..., result
|
class |
I2C
I2C - Convert int to char
Stack: ..., value -> ..., result
|
class |
I2D
I2D - Convert int to double
Stack: ..., value -> ..., result.word1, result.word2
|
class |
I2F
I2F - Convert int to float
Stack: ..., value -> ..., result
|
class |
I2L
I2L - Convert int to long
Stack: ..., value -> ..., result.word1, result.word2
|
class |
I2S
I2S - Convert int to short
Stack: ..., value -> ..., result
|
class |
IADD
IADD - Add ints
Stack: ..., value1, value2 -> result
|
class |
IAND
IAND - Bitwise AND int
Stack: ..., value1, value2 -> ..., result
|
class |
IASTORE
IASTORE - Store into int array
Stack: ..., arrayref, index, value -> ...
|
class |
IDIV
IDIV - Divide ints
Stack: ..., value1, value2 -> result
|
class |
IF_ACMPEQ
IF_ACMPEQ - Branch if reference comparison succeeds
Stack: ..., value1, value2 -> ...
|
class |
IF_ACMPNE
IF_ACMPNE - Branch if reference comparison doesn't succeed
Stack: ..., value1, value2 -> ...
|
class |
IF_ICMPEQ
IF_ICMPEQ - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
|
class |
IF_ICMPGE
IF_ICMPGE - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
|
class |
IF_ICMPGT
IF_ICMPGT - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
|
class |
IF_ICMPLE
IF_ICMPLE - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
|
class |
IF_ICMPLT
IF_ICMPLT - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
|
class |
IF_ICMPNE
IF_ICMPNE - Branch if int comparison doesn't succeed
Stack: ..., value1, value2 -> ...
|
class |
IFEQ
IFEQ - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
|
class |
IFGE
IFGE - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
|
class |
IFGT
IFGT - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
|
class |
IfInstruction
Super class for the IFxxx family of instructions.
|
class |
IFLE
IFLE - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
|
class |
IFLT
IFLT - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
|
class |
IFNE
IFNE - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
|
class |
IFNONNULL
IFNONNULL - Branch if reference is not null
Stack: ..., reference -> ...
|
class |
IFNULL
IFNULL - Branch if reference is not null
Stack: ..., reference -> ...
|
class |
IMUL
IMUL - Multiply ints
Stack: ..., value1, value2 -> result
|
class |
INEG
INEG - Negate int
Stack: ..., value -> ..., result
|
class |
INSTANCEOF
INSTANCEOF - Determine if object is of given type
Stack: ..., objectref -> ..., result
|
class |
INVOKEDYNAMIC
Class for INVOKEDYNAMIC.
|
class |
InvokeInstruction
Super class for the INVOKExxx family of instructions.
|
class |
INVOKEINTERFACE
INVOKEINTERFACE - Invoke interface method
Stack: ..., objectref, [arg1, [arg2 ...]]
|
class |
INVOKESPECIAL
INVOKESPECIAL - Invoke instance method; special handling for superclass, private
and instance initialization method invocations
Stack: ..., objectref, [arg1, [arg2 ...]]
|
class |
INVOKESTATIC
INVOKESTATIC - Invoke a class (static) method
Stack: ..., [arg1, [arg2 ...]]
|
class |
INVOKEVIRTUAL
INVOKEVIRTUAL - Invoke instance method; dispatch based on class
Stack: ..., objectref, [arg1, [arg2 ...]]
|
class |
IOR
IOR - Bitwise OR int
Stack: ..., value1, value2 -> ..., result
|
class |
IREM
IREM - Remainder of int
Stack: ..., value1, value2 -> result
|
class |
IRETURN
IRETURN - Return int from method
Stack: ..., value -> <empty>
|
class |
ISHL
ISHL - Arithmetic shift left int
Stack: ..., value1, value2 -> ..., result
|
class |
ISHR
ISHR - Arithmetic shift right int
Stack: ..., value1, value2 -> ..., result
|
class |
ISTORE
ISTORE - Store int from stack into local variable
Stack: ..., value -> ...
|
class |
ISUB
ISUB - Substract ints
Stack: ..., value1, value2 -> result
|
class |
IUSHR
IUSHR - Logical shift right int
Stack: ..., value1, value2 -> ..., result
|
class |
IXOR
IXOR - Bitwise XOR int
Stack: ..., value1, value2 -> ..., result
|
class |
L2D
L2D - Convert long to double
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
|
class |
L2F
L2F - Convert long to float
Stack: ..., value.word1, value.word2 -> ..., result
|
class |
L2I
L2I - Convert long to int
Stack: ..., value.word1, value.word2 -> ..., result
|
class |
LADD
LADD - Add longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
LAND
LAND - Bitwise AND longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
LASTORE
LASTORE - Store into long array
Stack: ..., arrayref, index, value.word1, value.word2 -> ...
|
class |
LCMP
LCMP - Compare longs:
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result <= -1, 0, 1>
|
class |
LDIV
LDIV - Divide longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
LMUL
LMUL - Multiply longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
LNEG
LNEG - Negate long
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
|
class |
LOOKUPSWITCH
LOOKUPSWITCH - Switch with unordered set of values
|
class |
LOR
LOR - Bitwise OR long
Stack: ..., value1, value2 -> ..., result
|
class |
LREM
LREM - Remainder of long
Stack: ..., value1, value2 -> result
|
class |
LRETURN
LRETURN - Return long from method
Stack: ..., value.word1, value.word2 -> <empty>
|
class |
LSHL
LSHL - Arithmetic shift left long
Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2
|
class |
LSHR
LSHR - Arithmetic shift right long
Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2
|
class |
LSTORE
LSTORE - Store long into local variable
Stack: ..., value.word1, value.word2 -> ...
|
class |
LSUB
LSUB - Substract longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
|
class |
LUSHR
LUSHR - Logical shift right long
Stack: ..., value1, value2 -> ..., result
|
class |
LXOR
LXOR - Bitwise XOR long
Stack: ..., value1, value2 -> ..., result
|
class |
MONITORENTER
MONITORENTER - Enter monitor for object
Stack: ..., objectref -> ...
|
class |
MONITOREXIT
MONITOREXIT - Exit monitor for object
Stack: ..., objectref -> ...
|
class |
POP
POP - Pop top operand stack word
Stack: ..., word -> ...
|
class |
POP2
POP2 - Pop two top operand stack words
Stack: ..., word2, word1 -> ...
|
class |
PUTFIELD
PUTFIELD - Put field in object
Stack: ..., objectref, value -> ...
|
class |
PUTSTATIC
PUTSTATIC - Put static field in class
Stack: ..., value -> ...
|
class |
RETURN
RETURN - Return from void method
Stack: ...
|
class |
ReturnInstruction
Super class for the xRETURN family of instructions.
|
class |
SASTORE
SASTORE - Store into short array
Stack: ..., arrayref, index, value -> ...
|
class |
Select
Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.
|
class |
StoreInstruction
Denotes an unparameterized instruction to store a value into a local variable,
e.g.
|
class |
SWAP
SWAP - Swa top operand stack word
Stack: ..., word2, word1 -> ..., word1, word2
|
class |
TABLESWITCH
TABLESWITCH - Switch within given range of values, i.e., low..high
|
Modifier and Type | Method and Description |
---|---|
void |
Visitor.visitStackConsumer(StackConsumer obj) |
void |
EmptyVisitor.visitStackConsumer(StackConsumer obj) |
Modifier and Type | Method and Description |
---|---|
void |
InstConstraintVisitor.visitStackConsumer(StackConsumer o)
Ensures the general preconditions of a StackConsumer instance.
|
Copyright © 2016. All rights reserved.