Package 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.
Package Specification
Contained in this package is a PassVerifier class for use with the JustIce verifier and its utility classes. Only the pass performing what Sun calls "Structural Constraints on Java Virtual Machine Code" has a PassVerifier class here. JustIce calls this pass "Pass 3b".-
Interface Summary Interface Description InstructionContext An InstructionContext offers convenient access to information like control flow successors and such.Subroutine This interface defines properties of JVM bytecode subroutines. -
Class Summary Class Description ControlFlowGraph This class represents a control flow graph of a method.ExceptionHandler This class represents an exception handler; that is, an ObjectType representing a subclass of java.lang.Throwable and the instruction the handler starts off (represented by an InstructionContext).ExceptionHandlers This class allows easy access to ExceptionHandler objects.ExecutionVisitor This Visitor class may be used for a type-based Java Virtual Machine simulation.Frame This class represents a JVM execution frame; that means, a local variable array and an operand stack.GenericArray A placeholder class that can be used to create an ObjectType of which has some of the properties arrays have.InstConstraintVisitor A Visitor class testing for valid preconditions of JVM instructions.LocalVariables This class implements an array of local variables used for symbolic JVM simulation.OperandStack This class implements a stack used for symbolic JVM stack simulation.Pass3bVerifier This PassVerifier verifies a method of class file according to pass 3, so-called structural verification as described in The Java Virtual Machine Specification, 2nd edition.Subroutines Instances of this class contain information about the subroutines found in a code array of a method.UninitializedObjectType This class represents an uninitialized object type; see The Java Virtual Machine Specification, Second Edition, page 147: 4.9.4 for more details.