AALOAD - Load reference from array
Stack: ..., arrayref, index -> value
Load reference from array
AASTORE - Store into reference array
Stack: ..., arrayref, index, value -> ...
Store into reference array
Access flags for classes, fields and methods.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Called by objects that are traversing the nodes of the tree implicitely
defined by the contents of a Java class.
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Convenience method, simply calls accept() on the contained instruction.
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Call corresponding visitor method(s).
Super class for all objects that have modifiers like private, final, ...
Java Virtual Machine Specification edition 2, ? 5.4.4 Access Control
Convert bit field of flags into string such as `static final'.
Convert bit field of flags into string such as `static final'.
ACONST_NULL - Push null reference
Stack: ...
Adds information about the local variable in slot 'slot'.
Adds some information about this local variable (slot).
Add a reference to an array class (e.g.
Add an attribute to an instruction handle.
Add an attribute to this class.
Add an attribute to this method.
Add an Attribute reader capable of parsing (user-defined) attributes
named "name".
Add clazz to repository if there isn't an equally named class already in there.
Add a new Class reference to the ConstantPool for a given type.
Add a new Class reference to the ConstantPool, if it is not already in there.
Add an attribute to the code.
Import constant from another ConstantPool and return new index.
Add a new double constant to the ConstantPool, if it is not already in there.
Add an exception possibly thrown by this method.
Add an exception handler, i.e., specify region where a handler is active and an
instruction where the actual handling is done.
Add a field to this class.
Add a new Fieldref constant to the ConstantPool, if it is not already
in there.
Add a new Float constant to the ConstantPool, if it is not already in there.
Handle adds itself to the list of resuable handles.
Overridden in BranchHandle
Add a new Integer constant to the ConstantPool, if it is not already in there.
Add an interface to this class, i.e., this class has to implement it.
Add a new InterfaceMethodref constant to the ConstantPool, if it is not already
in there.
Give an instruction a line number corresponding to the source code line.
Adds a local variable to this method.
Adds a local variable to this method and assigns an index automatically.
Add a new long constant to the ConstantPool, if it is not already in there.
This method adds a (warning) message to the message pool of this
PassVerifier.
Add a method to this class.
Add a new Methodref constant to the ConstantPool, if it is not already
in there.
Add a new NameAndType constant to the ConstantPool if it is not already
in there.
Add observer for this object.
Add observer for this object.
Add observer for this object.
Add observer for this object.
Add a new String constant to the ConstantPool, if it is not already in there.
Denote this handle is being referenced by t.
Add a new Utf8 constant to the ConstantPool, if it is not already in there.
Resize internal array of constants.
Denote family of instructions that allocates space in the heap.
ALOAD - Load reference from local variable
Stack: ...
Load reference from local variable
ANEWARRAY - Create new array of references
Stack: ..., count -> ..., arrayref
Append a branch instruction to the end of this list.
Append a compound instruction.
Append an instruction to the end of this list.
Append a compound instruction, after instruction i.
Append a single instruction j after another instruction i, which
must be in this list of course!
Append another list after instruction i contained in this list.
Append an instruction after instruction (handle) ih contained in this list.
Append a compound instruction.
Append an instruction after instruction (handle) ih contained in this list.
Append another list after instruction (handle) ih contained in this list.
Append another list to this one.
ARETURN - Return reference from method
Stack: ..., objectref -> <empty>
Return reference from method
Super class for the family of arithmetic instructions.
Super class for instructions dealing with array access such as IALOAD.
ARRAYLENGTH - Get length of array
Stack: ..., arrayref -> ..., length
Denotes array type, such as int[][]
Convenience constructor for array type, e.g.
Constructor for array of given type
Convenience constructor for reference array type, e.g.
Instances of this class should never be thrown.
Constructs a new AssertionViolatedException with null as its error message string.
Constructs a new AssertionViolatedException with the specified error message preceded
by "INTERNAL ERROR: ".
ASTORE - Store reference into local variable
Stack ..., objectref -> ...
Store reference into local variable
ATHROW - Throw exception
Stack: ..., objectref -> objectref
Adds the VerifierFactoryObserver o to the list of observers.
Attributes and their corresponding names.
Abstract super class for Attribute objects.
Unknown (non-standard) attributes may be read via user-defined factory
objects that can be registered with the Attribute.addAttributeReader
method.
CALOAD - Load char from array
Stack: ..., arrayref, index -> ..., value
Remove any initial value.
CASTORE - Store into char array
Stack: ..., arrayref, index, value -> ...
CHAR - static field in class org.apache.bcel.generic.
Type CHECKCAST - Check whether object is of given type
Stack: ..., objectref -> ..., objectref
Check whether object is of given type
Read class file(s) and convert them into HTML files.
Write contents of the given JavaClass into HTML files.
References to the constants containing the class and the field signature
The primitive class names corresponding to the T_XX constants,
e.g., CLASS_TYPE_NAMES[T_INT] = "java.lang.Integer"
Instances of this class are thrown by BCEL's class file verifier "JustIce"
when a class file to verify does not pass the verification pass 2 as described
in the Java Virtual Machine specification, 2nd edition.
Constructs a new ClassConstraintException with null as its error message string.
Constructs a new ClassConstraintException with the specified error message.
Contains information about file/ZIP entry of the Java class.
Thrown when the BCEL attempts to read a class file and determines
that the file is malformed or otherwise cannot be interpreted as a
class file.
Template class for building up a java class.
Initialize with existing class.
Convenience constructor to set up some important values initially.
Convenience constructor to set up some important values initially.
Thrown on internal errors.
Drop in replacement for the standard class loader of the JVM.
The repository maintains information about which classes have
been loaded.
Implement this interface if you're interested in changes to a ClassGen object
and register yourself with addObserver().
Wrapper class that parses a given Java .class file.
Parse class from the given stream.
Parse class from given .class file.
Parse class from given .class file in a ZIP-archive
Responsible for loading (class) files from the CLASSPATH.
Search for classes in CLASSPATH.
Search for classes in given path.
Utility class implementing a (typesafe) queue of JavaClass
objects.
Utility class implementing a (typesafe) set of JavaClass objects.
Utility class implementing a (typesafe) stack of JavaClass objects.
Utility class implementing a (typesafe) collection of JavaClass
objects.
Clear all entries from cache.
Clear all entries from cache.
Clear all entries from cache.
Use copy() if you want to have a deep copy(), i.e., with all references
copied correctly.
clone() - method in class org.apache.bcel.verifier.structurals.
Frame Returns a deep copy of this object; i.e.
Returns a deep copy of this object; that means, the clone operates
on a new stack.
Code - class org.apache.bcel.classfile.
Code This class represents a chunk of Java byte code contained in a
method.
Initialize from another object.
Code patterns found may be checked using an additional
user-defined constraint object whether they really match the needed criterion.
Instances of this class are thrown by BCEL's class file verifier "JustIce" when
a class file does not pass the verification pass 3.
This class represents an entry in the exception table of the Code
attribute and is used only there.
Initialize from another object.
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.
Add an exception handler, i.e., specify region where a handler is active and an
instruction where the actual handling is done.
Disassemble a byte array of JVM byte codes starting from code line
`index' and return the disassembled string representation.
Disassemble a stream of byte codes and return the
string representation.
Shorten long class names, java/lang/String becomes
String.
Shorten long class names, java/lang/String becomes
java.lang.String,
e.g..
Shorten long class name str, i.e., chop off the prefix,
if the
class name starts with this string and the flag chopit is true.
Wrapper class for `compound' operations, virtual instructions that
don't exist as byte code, but give a useful meaning.
Abstract superclass for classes to represent the different constant types
in the constant pool of a class file.
Tags in constant pool to denote type of constant.
This class is derived from the abstract
Constant class
and represents a reference to a (external) class.
Initialize from another object.
Abstract super class for Fieldref and Methodref constants.
Initialize from another object.
This class is derived from the abstract
Constant class
and represents a reference to a Double object.
Initialize from another object.
This class represents a constant pool reference to a field.
Initialize from another object.
This class is derived from the abstract
Constant class
and represents a reference to a float object.
Initialize from another object.
This class is derived from the abstract
Constant class
and represents a reference to an int object.
Initialize from another object.
This class represents a constant pool reference to an interface method.
Initialize from another object.
This class is derived from the abstract
Constant class
and represents a reference to a long object.
Initialize from another object.
This class represents a constant pool reference to a method.
Initialize from another object.
This class is derived from the abstract
Constant class
and represents a reference to the name and signature
of a field or method.
Initialize from another object.
This interface denotes those constants that have a "natural" value,
such as ConstantLong, ConstantString, etc..
This class represents the constant pool, i.e., a table of constants, of
a parsed classfile.
This class is used to build up a constant pool.
Create empty constant pool.
Initialize with given array of constants.
Initialize with given constant pool.
Denotes a push instruction that produces a literal on the stack
such as SIPUSH, BIPUSH, ICONST, etc.
Constants for the project, mostly defined in the JVM specification.
This class is derived from the abstract
Constant class
and represents a reference to a String object.
Initialize from another object.
Retrieve constant at `index' from constant pool and resolve it to
a string representation.
Resolve constant to a string representation.
This class is derived from the abstract
Constant class
and represents a reference to a Utf8 encoded string.
Initialize from another object.
This class is derived from Attribute and represents a constant
value, i.e., a default value for initializing a class field.
Initialize from another object.
The name of every constructor method in a class, also called
"instance initialization method".
Number of words consumed on operand stack by instructions.
This method also gives right results for instructions whose
effect on the stack depends on the constant pool entry they
reference.
Also works for instructions whose stack effect depends on the
constant pool entry they reference.
Also works for instructions whose stack effect depends on the
constant pool entry they reference.
Also works for instructions whose stack effect depends on the
constant pool entry they reference.
Returns if the given InstructionHandle refers to an instruction
that is part of this subroutine.
Returns the InstructionContext of a given instruction.
Returns the InstructionContext[] of a given InstructionHandle[],
in a naturally ordered manner.
This class represents a control flow graph of a method.
Super class for the x2y family of instructions.
Escape all occurences of newline chars '\n', quotes \", etc.
Use with caution, since `BranchInstruction's have a `target' reference which
is not copied correctly (only basic types are).
Abstract super class for instructions that use an index into the
constant pool such as LDC, INVOKEVIRTUAL, etc.
When this attribute reader is added via the static method
Attribute.addAttributeReader, an attribute name is associated with it.
Create binary operation for simple basic types, such as int and float.
Create branch instruction by given opcode, except LOOKUPSWITCH and TABLESWITCH.
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.
Override this method to create you own classes on the fly.
Uses PUSH to push a constant value onto the stack.
Create a field instruction.
Create an invoke instruction.
Create new array of given size and type.
Create "null" value for reference types, 0 for basic types like int
Create a call to the most popular System.out.println() method.
Create reference to `this'
D2F - class org.apache.bcel.generic.
D2F D2F - Convert double to float
Stack: ..., value.word1, value.word2 -> ..., result
D2F() - constructor for class org.apache.bcel.generic.
D2F Convert double to float
D2I - class org.apache.bcel.generic.
D2I D2I - Convert double to int
Stack: ..., value.word1, value.word2 -> ..., result
D2I() - constructor for class org.apache.bcel.generic.
D2I Convert double to int
D2L - class org.apache.bcel.generic.
D2L D2L - Convert double to long
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
D2L() - constructor for class org.apache.bcel.generic.
D2L Convert double to long
DADD - class org.apache.bcel.generic.
DADD DADD - Add doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result1.word2
DADD() - constructor for class org.apache.bcel.generic.
DADD Add doubles
DALOAD - Load double from array
Stack: ..., arrayref, index -> ..., result.word1, result.word2
DASTORE - Store into double array
Stack: ..., arrayref, index, value.word1, value.word2 -> ...
DCMPG - Compare doubles: value1 > value2
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result
DCMPG() - constructor for class org.apache.bcel.generic.
DCMPG Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
DCMPL - Compare doubles: value1 <32value2
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result
DCMPL() - constructor for class org.apache.bcel.generic.
DCMPL Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
DCONST - Push 0.0 or 1.0, other values cause an exception
Stack: ...
DDIV - class org.apache.bcel.generic.
DDIV DDIV - Divide doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
DDIV() - constructor for class org.apache.bcel.generic.
DDIV Divide doubles
Decode a string back to a byte array.
Remove instruction from this list.
Remove instructions from instruction `from' to instruction `to' contained
in this list.
Remove instruction from this list.
Remove instructions from instruction `from' to instruction `to' contained
in this list.
This class is derived from Attribute and denotes that this is a
deprecated method.
Initialize from another object.
Traverses a JavaClass with another Visitor object 'piggy-backed'
that is applied to all components of a JavaClass object.
Removes the VerifierFactoryObserver o from the list of observers.
DLOAD - Load double from local variable
Stack ...
Load double from local variable
DMUL - class org.apache.bcel.generic.
DMUL DMUL - Multiply doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
DMUL() - constructor for class org.apache.bcel.generic.
DMUL Multiply doubles
DNEG - class org.apache.bcel.generic.
DNEG DNEG - Negate double
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
DNEG() - constructor for class org.apache.bcel.generic.
DNEG Pass-one verification basically means loading in a class file.
Pass 2 is the pass where static properties of the
class file are checked without looking into "Code"
arrays of methods.
Pass 3a is the verification of static constraints of
JVM code (such as legal targets of branch instructions).
Pass 3b implements the data flow analysis as described in the Java Virtual
Machine Specification, Second Edition.
Does the real verification work, uncached.
Returns the VerificationResult for the given pass.
Returns the VerificationResult for the given pass.
Returns the VerificationResult for the given pass.
Returns the VerificationResult for the given pass.
DOUBLE - static field in class org.apache.bcel.generic.
Type This class represents the upper half of a DOUBLE variable.
DREM - class org.apache.bcel.generic.
DREM DREM - Remainder of doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
DREM() - constructor for class org.apache.bcel.generic.
DREM Remainder of doubles
DRETURN - Return double from method
Stack: ..., value.word1, value.word2 -> <empty>
Return double from method
DSTORE - Store double into local variable
Stack: ..., value.word1, value.word2 -> ...
Store double into local variable
DSUB - class org.apache.bcel.generic.
DSUB DSUB - Substract doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
DSUB() - constructor for class org.apache.bcel.generic.
DSUB Substract doubles
Dump attribute to file stream in binary format.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump code attribute to file stream in binary format.
Dump code exception to file stream in binary format.
Dump constant class to file stream in binary format.
Dump constant field reference to file stream in binary format.
Dump constant double to file stream in binary format.
Dump constant float to file stream in binary format.
Dump constant integer to file stream in binary format.
Dump constant long to file stream in binary format.
Dump name and signature index to file stream in binary format.
Dump constant pool to file stream in binary format.
Dump constant field reference to file stream in binary format.
Dump String in Utf8 format to file stream.
Dump constant value attribute to file stream on binary format.
Dump instruction as byte code to stream out.
Dump source file attribute to file stream in binary format.
Dump exceptions attribute to file stream in binary format.
Dump object to file stream on binary format.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump inner class attribute to file stream in binary format.
Dump source file attribute to file stream in binary format.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump Java class to output stream in binary format.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump line number/pc pair to file stream in binary format.
Dump line number table attribute to file stream in binary format.
Dump local variable to file stream in binary format.
Dump instruction as byte code to stream out.
Dump local variable table attribute to file stream in binary format.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump source file attribute to file stream in binary format.
Dump instruction as byte code to stream out.
Dump instruction as byte code to stream out.
Dump source file attribute to file stream in binary format.
Dump instruction as short code to stream out.
Dump source file attribute to file stream in binary format.
Dump line number table attribute to file stream in binary format.
Dump type entries to file.
Dump source file attribute to file stream in binary format.
Dump instruction as byte code to stream out.
Dump unknown bytes to file stream.
Dump Java class to output stream in binary format.
Dump class to a file named file_name.
DUP - class org.apache.bcel.generic.
DUP DUP - Duplicate top operand stack word
Stack: ..., word -> ..., word, word
DUP() - constructor for class org.apache.bcel.generic.
DUP Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
DUP2 - class org.apache.bcel.generic.
DUP2 DUP2 - Duplicate two top operand stack words
Stack: ..., word2, word1 -> ..., word2, word1, word2, word1
DUP2() - constructor for class org.apache.bcel.generic.
DUP2 Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
DUP2_X1 - Duplicate two top operand stack words and put three down
Stack: ..., word3, word2, word1 -> ..., word2, word1, word3, word2, word1
DUP2_X2 - Duplicate two top operand stack words and put four down
Stack: ..., word4, word3, word2, word1 -> ..., word2, word1, word4, word3, word2, word1
DUP_X1 - Duplicate top operand stack word and put two down
Stack: ..., word2, word1 -> ..., word1, word2, word1
DUP_X2 - Duplicate top operand stack word and put three down
Stack: ..., word3, word2, word1 -> ..., word1, word3, word2, word1
A placeholder class that can be used to create an ObjectType of which
has some of the properties arrays have.
Returns the type of the local variable slot i.
Returns an int[] containing the indices of the local variable slots
accessed by this Subroutine (read-accessed, write-accessed or both);
local variables referenced by subroutines of this subroutine are
not included.
Get all interfaces implemented by this JavaClass (transitively).
Convert arguments of a method (signature) to an array of Type objects.
Get attribute of an instruction handle.
When everything is finished, use this method to convert the instruction
list into an array of bytes.
Gets the type of the Exception to catch, 'null' for ANY.
Returns the name of the class this verifier operates on.
Checks for class path components in the following properties:
"java.class.path", "sun.boot.class.path", "java.ext.dirs"
Returns a (correctly typed) clone of this object.
Returns a (typed!) clone of this.
Get CodeException object.
This relies on that the instruction list has already been dumped
to byte code or or that the `setPositions' methods has been
called for the instruction list.
Get Comparator object used in the equals() method to determine
equality of instructions.
Get constant from constant pool.
Get constant from constant pool and check whether it has the
expected type.
Get string from constant pool and bypass the indirection of
`ConstantClass' and `ConstantString' objects.
The count argument according to the Java Language Specification,
Second Edition.
Returns all the JsrInstructions that have the
first instruction of this subroutine as their target.
Returns the exception handlers that protect this instruction.
Returns all the ExceptionHandler instances representing exception
handlers that protect the instruction ih.
Returns the type of the exception that's handled.
GETFIELD - Fetch field from object
Stack: ..., objectref -> ..., value
OR
Stack: ..., objectref -> ..., value.word1, value.word2
Get field object after having set up all necessary values.
This commutative operation returns the first common superclass (narrowest ReferenceType
referencing a class, not an interface).
Returns the InstructionHandle where the handler starts off.
Returns the ObjectType of the same class as the one of the uninitialized object
represented by this UninitializedObjectType instance.
Return stream for class or resource on CLASSPATH.
Returns the InstructionHandle this InstructionContext is wrapped around.
Returns an InstructionContext[] with all the InstructionContext instances
for the method whose control flow is represented by this ControlFlowGraph
(NOT ORDERED!).
Get positions (offsets) of all instructions in the list.
Returns all instructions that together form this subroutine.
Get interfaces directly implemented by this JavaClass.
Returns the one and only RET that leaves the subroutine.
Get LineNumber attribute .
Returns the ObjectType of the referenced class or interface
that may be loaded and resolved.
Returns the ObjectType of the referenced class or interface
that may be loaded and resolved.
Returns the ObjectType of the referenced class or interface
that may be loaded and resolved.
Returns the ObjectType of the referenced class or interface
that may be loaded and resolved.
Get LocalVariable object.
Returns the LocalVariableInfo for the given slot.
Returns a LocalVariablesInfo object containing information
about the usage of the local variables in the Code attribute
of the said method or null if the class file this
Pass2Verifier operates on could not be pass-2-verified correctly.
Computes stack usage of an instruction list by performing control flow analysis.
Returns the error message string of this AssertionViolatedException object.
Returns a detailed message.
Returns the error message string of this VerifierConstraintViolatedException object.
Currently this returns an empty array of String.
Returns the (warning) messages that this PassVerifier accumulated
during its do_verify()ing work.
This returns all the (warning) messages collected during verification.
Returns the method number as supplied when instantiating.
Returns the method number as supplied when instantiating.
Convert type to Java method signature, e.g.
Returns the name of the local variable that uses this local
variable slot at the given bytecode offset.
This method returns the outgoing execution frame situation;
therefore it has to be calculated by execute(Frame, ArrayList)
first.
Returns an int[] containing the indices of the local variable slots
accessed by this Subroutine (read-accessed, write-accessed or both);
local variables referenced by subroutines of this subroutine are
included.
Gets the ClassRepository which holds its definition.
Convert return value of a method (signature) to a Type object.
Parse Java type such as "char", or "java.lang.String[]" and return the
signature in byte code format, e.g.
Map byte code positions to source code lines.
This method returns the stack trace of a Throwable instance as a String.
GETSTATIC - Fetch static field from class
Stack: ..., -> ..., value
OR
Stack: ..., -> ..., value.word1, value.word2
Returns one one the VERIFIED_OK, VERIFIED_NOTYET, VERIFIED_REJECTED constants.
Returns the Subroutine object associated with the given
leader (that is, the first instruction of the subroutine).
Returns the usual control flow successors.
The getTag and setTag methods may be used for
temporary flagging, such as graph colouring.
For easy handling, the piece of code that is not a
subroutine, the top-level, is also modeled as a Subroutine
object.
Returns the type of the local variable that uses this local
variable slot at the given bytecode offset.
Convert runtime java.lang.Class to BCEL Type object.
Returns the type associated with this instruction.
Returns the type associated with the instruction -
in case of ALOAD or ASTORE Type.OBJECT is returned.
Convert signature to a Type object.
Returns the (only) verifier responsible for the class with the given name.
Returns all Verifier instances created so far.
GOTO - class org.apache.bcel.generic.
GOTO GOTO - Branch always (to relative offset, not absolute address)
GOTO_W - Branch always (to relative offset, not absolute address)
A graphical user interface application demonstrating JustIce.
I2B - class org.apache.bcel.generic.
I2B I2B - Convert int to byte
Stack: ..., value -> ..., result
I2B() - constructor for class org.apache.bcel.generic.
I2B Convert int to byte
I2C - class org.apache.bcel.generic.
I2C I2C - Convert int to char
Stack: ..., value -> ..., result
I2C() - constructor for class org.apache.bcel.generic.
I2C Convert int to char
I2D - class org.apache.bcel.generic.
I2D I2D - Convert int to double
Stack: ..., value -> ..., result.word1, result.word2
I2D() - constructor for class org.apache.bcel.generic.
I2D Convert int to double
I2F - class org.apache.bcel.generic.
I2F I2F - Convert int to float
Stack: ..., value -> ..., result
I2F() - constructor for class org.apache.bcel.generic.
I2F Convert int to float
I2L - class org.apache.bcel.generic.
I2L I2L - Convert int to long
Stack: ..., value -> ..., result.word1, result.word2
I2L() - constructor for class org.apache.bcel.generic.
I2L Convert int to long
I2S - class org.apache.bcel.generic.
I2S I2S - Convert int to short
Stack: ..., value -> ..., result
I2S() - constructor for class org.apache.bcel.generic.
I2S Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
IADD - class org.apache.bcel.generic.
IADD IADD - Add ints
Stack: ..., value1, value2 -> result
IADD() - constructor for class org.apache.bcel.generic.
IADD Add ints
IALOAD - Load int from array
Stack: ..., arrayref, index -> ..., value
IAND - class org.apache.bcel.generic.
IAND IAND - Bitwise AND int
Stack: ..., value1, value2 -> ..., result
IAND() - constructor for class org.apache.bcel.generic.
IAND Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
IASTORE - Store into int array
Stack: ..., arrayref, index, value -> ...
ICONST - Push value between -1, ..., 5, other values cause an exception
Stack: ...
IDIV - class org.apache.bcel.generic.
IDIV IDIV - Divide ints
Stack: ..., value1, value2 -> result
IDIV() - constructor for class org.apache.bcel.generic.
IDIV Divide ints
IF_ACMPEQ - Branch if reference comparison succeeds
Stack: ..., value1, value2 -> ...
IF_ACMPNE - Branch if reference comparison doesn't succeed
Stack: ..., value1, value2 -> ...
IF_ICMPEQ - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
IF_ICMPGE - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
IF_ICMPGT - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
IF_ICMPLE - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
IF_ICMPLT - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ...
IF_ICMPNE - Branch if int comparison doesn't succeed
Stack: ..., value1, value2 -> ...
IFEQ - class org.apache.bcel.generic.
IFEQ IFEQ - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
IFGE - class org.apache.bcel.generic.
IFGE IFGE - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
IFGT - class org.apache.bcel.generic.
IFGT IFGT - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
Super class for the IFxxx family of instructions.
IFLE - class org.apache.bcel.generic.
IFLE IFLE - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
IFLT - class org.apache.bcel.generic.
IFLT IFLT - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
IFNE - class org.apache.bcel.generic.
IFNE IFNE - Branch if int comparison with zero succeeds
Stack: ..., value -> ...
IFNONNULL - Branch if reference is not null
Stack: ..., reference -> ...
IFNULL - Branch if reference is not null
Stack: ..., reference -> ...
IINC - class org.apache.bcel.generic.
IINC IINC - Increment local variable by constant
ILOAD - Load int from local variable onto stack
Stack: ...
Load int from local variable
IMPDEP1 - Implementation dependent
IMPDEP2 - Implementation dependent
IMUL - class org.apache.bcel.generic.
IMUL IMUL - Multiply ints
Stack: ..., value1, value2 -> result
IMUL() - constructor for class org.apache.bcel.generic.
IMUL Multiply ints
Denote entity that refers to an index, e.g.
INEG - class org.apache.bcel.generic.
INEG INEG - Negate int
Stack: ..., value -> ..., result
INEG() - constructor for class org.apache.bcel.generic.
INEG Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
Read needed data (i.e., index) from file.
Read needed data (i.e., index) from file.
Read needed data (i.e., index) from file.
Read needed data (i.e., no.
Replaces all occurences of u in this local variables set
with an "initialized" ObjectType.
Replaces all occurences of u in this OperandStack instance
with an "initialized" ObjectType.
This class represents a inner class attribute, i.e., the class
indices of the inner and outer classes, the name and the attributes
of the inner class.
Initialize from another object.
This class is derived from Attribute and denotes that this class
is an Inner class of another.
Initialize from another object.
Insert a branch instruction at start of this list.
Insert a compound instruction.
Insert an instruction at start of this list.
Insert a compound instruction before instruction i.
Insert a single instruction j before another instruction i, which
must be in this list of course!
Insert another list before Instruction i contained in this list.
Insert an instruction before instruction (handle) ih contained in this list.
Insert a compound instruction.
Insert an instruction before instruction (handle) ih contained in this list.
Insert another list before Instruction handle ih contained in this list.
INSTANCEOF - Determine if object is of given type
Stack: ..., objectref -> ..., result
Equivalent to runtime "instanceof" operator.
Equivalent to runtime "instanceof" operator.
A Visitor class testing for valid preconditions of JVM instructions.
Abstract super class for all Java byte codes.
Equality of instructions isn't clearly to be defined.
This interface contains shareable instruction objects.
An InstructionContext offers convenient access
to information like control flow successors and
such.
Instances of this class may be used, e.g., to generate typed
versions of instructions.
Initialize with ClassGen object
Initialize just with ConstantPoolGen object
InstructionFinder is a tool to search for given instructions patterns,
i.e., match sequences of instructions in an instruction list via
regular expressions.
Instances of this class give users a handle to the instructions contained in
an InstructionList.
This class is a container for a list of
Instruction objects.
Create (empty) instruction list.
Initialize instruction list from byte array.
Create instruction list containing one instruction.
Initialize list with (nonnull) compound instruction.
Create instruction list containing one instruction.
Implement this interface if you're interested in changes to an InstructionList object
and register yourself with addObserver().
Get object via its opcode, for immutable instructions like
branch instructions entries are set to null.
Denote that a class targets InstructionHandles within an InstructionList.
INT - static field in class org.apache.bcel.generic.
Type The names of the interfaces implemented by arrays
A small utility class representing a set of basic int values.
Instances of this class are thrown by BCEL's class file verifier "JustIce"
when the verification of a method is requested that does not exist.
Constructs an InvalidMethodException with the specified detail message.
Super class for the INVOKExxx family of instructions.
INVOKEINTERFACE - Invoke interface method
Stack: ..., objectref, [arg1, [arg2 ...]] -> ...
INVOKESPECIAL - Invoke instance method; special handling for superclass, private
and instance initialization method invocations
Stack: ..., objectref, [arg1, [arg2 ...]] -> ...
INVOKESTATIC - Invoke a class (static) method
Stack: ..., [arg1, [arg2 ...]] -> ...
INVOKEVIRTUAL - Invoke instance method; dispatch based on class
Stack: ..., objectref, [arg1, [arg2 ...]] -> ...
IOR - class org.apache.bcel.generic.
IOR IOR - Bitwise OR int
Stack: ..., value1, value2 -> ..., result
IOR() - constructor for class org.apache.bcel.generic.
IOR Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
IREM - class org.apache.bcel.generic.
IREM IREM - Remainder of int
Stack: ..., value1, value2 -> result
IREM() - constructor for class org.apache.bcel.generic.
IREM Remainder of ints
IRETURN - Return int from method
Stack: ..., value -> <empty>
Return true iff this is assignment compatible with another type t
as defined in the JVM specification; see the AASTORE definition
there.
Return true iff this type is castable to another type t as defined in
the JVM specification.
Returns true, if and only if the said instruction is not reachable; that means,
if it not part of this ControlFlowGraph.
Returns true IFF this OperandStack is empty.
ISHL - class org.apache.bcel.generic.
ISHL ISHL - Arithmetic shift left int
Stack: ..., value1, value2 -> ..., result
ISHL() - constructor for class org.apache.bcel.generic.
ISHL ISHR - class org.apache.bcel.generic.
ISHR ISHR - Arithmetic shift right int
Stack: ..., value1, value2 -> ..., result
ISHR() - constructor for class org.apache.bcel.generic.
ISHR ISTORE - Store int from stack into local variable
Stack: ..., value -> ...
Store int into local variable
ISUB - class org.apache.bcel.generic.
ISUB ISUB - Substract ints
Stack: ..., value1, value2 -> result
ISUB() - constructor for class org.apache.bcel.generic.
ISUB Substract ints
Constants used in the StackMap attribute.
IUSHR - Logical shift right int
Stack: ..., value1, value2 -> ..., result
IUSHR() - constructor for class org.apache.bcel.generic.
IUSHR IXOR - class org.apache.bcel.generic.
IXOR IXOR - Bitwise XOR int
Stack: ..., value1, value2 -> ..., result
IXOR() - constructor for class org.apache.bcel.generic.
IXOR Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
L2D - class org.apache.bcel.generic.
L2D L2D - Convert long to double
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
L2D() - constructor for class org.apache.bcel.generic.
L2D L2F - class org.apache.bcel.generic.
L2F L2F - Convert long to float
Stack: ..., value.word1, value.word2 -> ..., result
L2F() - constructor for class org.apache.bcel.generic.
L2F L2I - class org.apache.bcel.generic.
L2I L2I - Convert long to int
Stack: ..., value.word1, value.word2 -> ..., result
L2I() - constructor for class org.apache.bcel.generic.
L2I LADD - class org.apache.bcel.generic.
LADD LADD - Add longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
LADD() - constructor for class org.apache.bcel.generic.
LADD Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LALOAD - Load long from array
Stack: ..., arrayref, index -> ..., value1, value2
LAND - class org.apache.bcel.generic.
LAND LAND - Bitwise AND longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
LAND() - constructor for class org.apache.bcel.generic.
LAND LASTORE - Store into long array
Stack: ..., arrayref, index, value.word1, value.word2 -> ...
LCMP - class org.apache.bcel.generic.
LCMP LCMP - Compare longs:
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result <= -1, 0, 1>
LCMP() - constructor for class org.apache.bcel.generic.
LCMP Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LCONST - Push 0 or 1, other values cause an exception
Stack: ...
LDC - class org.apache.bcel.generic.
LDC LDC - Push item from constant pool.
LDC(int) - constructor for class org.apache.bcel.generic.
LDC LDC2_W - Push long or double from constant pool
Stack: ...
LDC_W - Push item from constant pool (wide index)
Stack: ...
LDIV - class org.apache.bcel.generic.
LDIV LDIV - Divide longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
LDIV() - constructor for class org.apache.bcel.generic.
LDIV Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
This class represents a (PC offset, line number) pair, i.e., a line number in
the source that corresponds to a relative address in the byte code.
Initialize from another object.
This class represents a line number within a method, i.e., give an instruction
a line number corresponding to the source code line.
This class represents a table of line numbers for debugging
purposes.
Super class of any linking exception (aka Linkage Error)
Instances of this class are thrown by BCEL's class file verifier "JustIce" when
a class file to verify does not pass the verification pass 3 because of a violation
of a constraint that is usually only verified at run-time (pass 4).
LLOAD - Load long from local variable
Stack ...
LMUL - class org.apache.bcel.generic.
LMUL LMUL - Multiply longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
LMUL() - constructor for class org.apache.bcel.generic.
LMUL Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LNEG - class org.apache.bcel.generic.
LNEG LNEG - Negate long
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2
LNEG() - constructor for class org.apache.bcel.generic.
LNEG Denotes that an instruction may start the process of loading and resolving
the referenced class in the Virtual Machine.
Find the JavaClass instance for the given run-time class object
Try to find class source via getResourceAsStream().
Lookup a JavaClass object from the Class Name provided.
Find the class with the name provided, if the class
isn't there, make an attempt to load it.
Load a JavaClass object for the given class name using
the CLASSPATH environment variable.
When loading a class file, BCEL will throw an instance of LoadingException if
the class file is malformed; so it is not conforming to the "Pass 1" verification
process as described in the Java Virtual Machine specification, 2nd.
Constructs a new LoadingException with null as its error message string.
Constructs a new LoadingException with the specified error message.
Denotes an unparameterized instruction to load a value from a local
variable, e.g.
This class represents a local variable within a method.
Initialize from another object.
This class represents a local variable within a method.
Generate a local variable that with index `index'.
A utility class holding the information about
the name and the type of a local variable in
a given slot (== index).
A LocalVariableInfoInconsistentException instance is thrown by
the LocalVariableInfo class when it detects that the information
it holds is inconsistent; this is normally due to inconsistent
LocalVariableTable entries in the Code attribute of a certain
Method object.
Constructs a new LocalVariableInfoInconsistentException with null as its error message string.
Constructs a new LocalVariableInfoInconsistentException with the specified error message.
Abstract super class for instructions dealing with local variables.
This class implements an array of local variables used for symbolic JVM
simulation.
Creates a new LocalVariables object.
A utility class holding the information about
the names and the types of the local variables in
a given method.
This class represents colection of local variables in a
method.
Initialize from another object.
LONG - static field in class org.apache.bcel.generic.
Type This class represents the upper half of a LONG variable.
Try to find class source via getResourceAsStream().
Look for ConstantClass in ConstantPool named `str'.
Lookup class somewhere found on your CLASSPATH, or whereever the
repository instance looks for it.
Look for ConstantDouble in ConstantPool.
Look for ConstantFieldref in ConstantPool.
Look for ConstantFloat in ConstantPool.
Look for ConstantInteger in ConstantPool.
Look for ConstantInterfaceMethodref in ConstantPool.
Look for ConstantLong in ConstantPool.
Look for ConstantMethodref in ConstantPool.
Look for ConstantNameAndType in ConstantPool.
Look for ConstantString in ConstantPool containing String `str'.
LOOKUPSWITCH - Switch with unordered set of values
Look for ConstantUtf8 in ConstantPool.
LOR - class org.apache.bcel.generic.
LOR LOR - Bitwise OR long
Stack: ..., value1, value2 -> ..., result
LOR() - constructor for class org.apache.bcel.generic.
LOR Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LREM - class org.apache.bcel.generic.
LREM LREM - Remainder of long
Stack: ..., value1, value2 -> result
LREM() - constructor for class org.apache.bcel.generic.
LREM LRETURN - Return long from method
Stack: ..., value.word1, value.word2 -> <empty>
LSHL - class org.apache.bcel.generic.
LSHL LSHL - Arithmetic shift left long
Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2
LSHL() - constructor for class org.apache.bcel.generic.
LSHL Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LSHR - class org.apache.bcel.generic.
LSHR LSHR - Arithmetic shift right long
Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2
LSHR() - constructor for class org.apache.bcel.generic.
LSHR Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LSTORE - Store long into local variable
Stack: ..., value.word1, value.word2 -> ...
LSUB - class org.apache.bcel.generic.
LSUB LSUB - Substract longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->
..., result.word1, result.word2
LSUB() - constructor for class org.apache.bcel.generic.
LSUB LUSHR - Logical shift right long
Stack: ..., value1, value2 -> ..., result
LUSHR() - constructor for class org.apache.bcel.generic.
LUSHR Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
LXOR - class org.apache.bcel.generic.
LXOR LXOR - Bitwise XOR long
Stack: ..., value1, value2 -> ..., result
LXOR() - constructor for class org.apache.bcel.generic.
LXOR SALOAD - Load short from array
Stack: ..., arrayref, index -> ..., value
Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
SASTORE - Store into short array
Stack: ..., arrayref, index, value -> ...
Start search beginning from the start of the given instruction list.
Start search beginning from `from'.
Search for the given pattern in the instruction list.
Start search beginning from the start of the given instruction list.
Map opcode names to opcode numbers.
Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.
Sets a new Type for the given local variable slot.
Set access flags aka "modifiers".
Sets the type of the Exception to catch.
Set comparator to be used for equals().
Sets the ConstantPoolGen needed for symbolic execution.
Sets the ConstantPoolGen instance needed for constraint
checking prior to execution.
Set File name of class, aka SourceFile attribute value
The only method granting access to the single instance of
the ExecutionVisitor class.
This returns the single instance of the InstConstraintVisitor class.
Set the index to constant pool.
Set index of local variable.
Set the index to constant pool and adjust size.
Set the local variable index
Set index of local variable containg the return address
Set (optional) initial value of field, otherwise it will be set to null/0/false
by the JVM automatically.
Replace current instruction contained in this handle.
Set major version number of class file, default value is 45 (JDK 1.1)
Compute maximum number of local variables.
Set maximum number of local variables.
Set maximum stack size for this method.
Sets the MethodGen instance needed for constraint
checking prior to execution.
Set minor version number of class file, default value is 3 (JDK 1.1)
Set access flags aka "modifiers".
Give all instructions their position number (offset in byte stream), i.e.,
make the list ready to be dumped.
Sets the ClassRepository which loaded the JavaClass.
Set repository instance to be used for class loading
Set absolute path to file this class was read from.
The getTag and setTag methods may be used for
temporary flagging, such as graph colouring.
Set branch target for `i'th case
Pass new target to instruction.
SHORT - static field in class org.apache.bcel.generic.
Type The signature characters corresponding to primitive types,
e.g., SHORT_TYPE_NAMES[T_INT] = "I"
This class is derived from Attribute and represents a reference
to a GJ attribute.
Initialize from another object.
Converts signature to string with all class names compacted.
The field signature represents the value of an argument to a function or
the value of a variable.
SIPUSH - Push short
Stack: ...
Returns the number of stack slots used.
This class is derived from Attribute and represents a reference
to the source file of this class.
Initialize from another object.
Denote an instruction that may consume a value from the stack.
Super class for stack operations like DUP and POP.
This class represents a stack map attribute used for
preverification of Java classes for the
Java 2 Micro Edition
(J2ME).
This class represents a stack map entry recording the types of
local variables and the the of stack items at a given byte code offset.
This class represents the type of a local variable or item on stack
used in the StackMap entries.
Denote an instruction that may produce a value on top of the stack
(this excludes DUP_X1, e.g.)
Start Java code generation
The name of the static initializer, also called "class
initialization method" or "interface initialization
method".
Instances of this class are thrown by BCEL's class file verifier "JustIce" when
a class file to verify does not pass the verification pass 3 because of a violation
of a static constraint as described in the Java Virtual Machine Specification,
2nd edition, 4.8.1, pages 133-137.
Constructs a new CodeConstraintException with the specified error message.
Instances of this class are thrown by BCEL's class file verifier "JustIce" when
a class file to verify does not pass the verification pass 3 because of a violation
of a static constraint as described in the Java Virtual Machine Specification,
Second edition, 4.8.1, pages 133-137.
Instances of this class are thrown by BCEL's class file verifier "JustIce" when
a class file to verify does not pass the verification pass 3 because of a violation
of a static constraint as described in the Java Virtual Machine Specification,
Second edition, 4.8.1, pages 133-137.
Store a new JavaClass into this Repository.
Store the provided class under "clazz.getClassName()"
Store a new JavaClass instance into this Repository.
Denotes an unparameterized instruction to store a value into a local variable,
e.g.
STRING - static field in class org.apache.bcel.generic.
Type BCEL's Node classes (those from the classfile API that accept() Visitor
instances) have toString() methods that were not designed to be robust,
this gap is closed by this class.
Creates a new StringRepresentation object which is the representation of n.
Do not/Do produce attributes code attributesLineNumberTable and
LocalVariableTable, like javac -O
Instances of this class are thrown by BCEL's class file verifier "JustIce" when
a class file to verify does not pass the verification pass 3 because of a violation
of a structural constraint as described in the Java Virtual Machine Specification,
2nd edition, 4.8.2, pages 137-139.
Constructs a new StructuralCodeConstraintException with null as its error message string.
Constructs a new StructuralCodeConstraintException with the specified error message.
This interface defines properties of JVM bytecode subroutines.
Returns the subroutine object associated with the
given instruction.
Instances of this class contain information about the subroutines
found in a code array of a method.
Returns the subroutines that are directly called from this subroutine.
SWAP - class org.apache.bcel.generic.
SWAP SWAP - Swa top operand stack word
Stack: ..., word2, word1 -> ..., word1, word2
SWAP() - constructor for class org.apache.bcel.generic.
SWAP Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction().
Temporarily swap the current instruction, without disturbing
anything.
SWITCH - Branch depending on int value, generates either LOOKUPSWITCH or
TABLESWITCH instruction, depending on whether the match values (int[]) can be
sorted with no gaps between the numbers.
Template for switch() constructs.
This class is derived from Attribute and declares this class as
`synthetic', i.e., it needs special handling.
Initialize from another object.
This repository is used in situations where a Class is created
outside the realm of a ClassLoader.
Denotes an instruction to be a variable length instruction, such as
GOTO, JSR, LOOKUPSWITCH and TABLESWITCH.
Instances of this class are thrown by BCEL's class file verifier "JustIce" when a
class file to verify does not pass one of the verification passes 2 or 3.
A VerificationResult is what a PassVerifier returns
after verifying.
Constant to indicate verification has not been tried yet.
Constant to indicate verification was passed.
Constant to indicate verfication failed.
A Verifier instance is there to verify a class file according to The Java Virtual
Machine Specification, 2nd Edition.
This class implements a machine-generated frame for use with
the GraphicalVerfifier.
Instances of this class are thrown by BCEL's class file verifier "JustIce"
whenever
verification proves that some constraint of a class file (as stated in the
Java Virtual Machine Specification, Edition 2) is violated.
This class produces instances of the Verifier class.
This class implements an adapter; it implements both a Swing ListModel and
a VerifierFactoryObserver.
VerifierFactoryObserver instances are notified when new Verifier
instances are created.
This method runs a verification pass conforming to the
Java Virtual Machine Specification, 2nd edition, on a
class file.
A class for simple graphical class file verification.
Use this constructor if you want a possibility to verify other
class files than java.lang.Object.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Ensures the general preconditions of a CPInstruction instance.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Ensures the general preconditions of a FieldInstruction instance.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Ensures the specific preconditions of the said instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Ensures the general preconditions of an InvokeInstruction instance.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Assures the generic preconditions of a LoadClass instance.
Assures the generic preconditions of a LoadInstruction instance.
Assures the generic preconditions of a LocalVariableInstruction instance.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Interface to make use of the Visitor pattern programming style.
Interface implementing the Visitor pattern programming style.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Assures the generic preconditions of a ReturnInstruction instance.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Ensures the general preconditions of a StackConsumer instance.
Ensures the general preconditions of a StackInstruction instance.
Ensures the general preconditions of a StackProducer instance.
Assures the generic preconditions of a StoreInstruction instance.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
Symbolically executes the corresponding Java Virtual Machine instruction.
Ensures the specific preconditions of the said instruction.
VOID - static field in class org.apache.bcel.generic.
Type Predefined constants
Canonical VerificationResult for not-yet-tried verifications.
Canonical VerificationResult for passed verifications.