Uses of Interface
org.apache.bcel.verifier.structurals.InstructionContext
Packages that use InstructionContext
Package
Description
A PassVerifier class mostly used internally by JustIce, yielding a control flow graph for public use as a nice side effect.
-
Uses of InstructionContext in org.apache.bcel.verifier.structurals
Classes in org.apache.bcel.verifier.structurals that implement InstructionContextModifier and TypeClassDescriptionprivate final class
Objects of this class represent a node in a ControlFlowGraph.Fields in org.apache.bcel.verifier.structurals with type parameters of type InstructionContextModifier and TypeFieldDescriptionprivate final List
<ArrayList<InstructionContext>> Pass3bVerifier.InstructionContextQueue.ecs
The second elements from pairs in the queue.private List
<InstructionContext> ControlFlowGraph.InstructionContextImpl.executionPredecessors
The 'execution predecessors' - a list of type InstructionContext of those instances that have been execute()d before in that order.private final List
<InstructionContext> Pass3bVerifier.InstructionContextQueue.ics
The first elements from pairs in the queue.private final Map
<InstructionContext, Frame> ControlFlowGraph.InstructionContextImpl.inFrames
The 'incoming' execution Frames.private final Map
<InstructionHandle, InstructionContext> ControlFlowGraph.instructionContexts
All InstructionContext instances of this ControlFlowGraph.private final Map
<InstructionContext, Frame> ControlFlowGraph.InstructionContextImpl.outFrames
The 'outgoing' execution Frames.Methods in org.apache.bcel.verifier.structurals that return InstructionContextModifier and TypeMethodDescriptionControlFlowGraph.contextOf
(InstructionHandle inst) Returns the InstructionContext of a given instruction.ControlFlowGraph.contextsOf
(InstructionHandle[] insts) Returns the InstructionContext[] of a given InstructionHandle[], in a naturally ordered manner.Pass3bVerifier.InstructionContextQueue.getIC
(int i) Gets a specific InstructionContext from the queue.ControlFlowGraph.getInstructionContexts()
Returns an InstructionContext[] with all the InstructionContext instances for the method whose control flow is represented by this ControlFlowGraph (NOT ORDERED!).ControlFlowGraph.InstructionContextImpl.getSuccessors()
InstructionContext.getSuccessors()
Returns the usual control flow successors.Methods in org.apache.bcel.verifier.structurals that return types with arguments of type InstructionContextModifier and TypeMethodDescriptionPass3bVerifier.InstructionContextQueue.getEC
(int i) Gets a specific ExecutionChain from the queue.Methods in org.apache.bcel.verifier.structurals with parameters of type InstructionContextModifier and TypeMethodDescriptionvoid
Pass3bVerifier.InstructionContextQueue.add
(InstructionContext ic, ArrayList<InstructionContext> executionChain) Adds an (InstructionContext, ExecutionChain) pair to this queue.private void
Pass3bVerifier.circulationPump
(MethodGen m, ControlFlowGraph cfg, InstructionContext start, Frame vanillaFrame, InstConstraintVisitor icv, ExecutionVisitor ev) Whenever the outgoing frame situation of an InstructionContext changes, all its successors are put [back] into the queue [as if they were unvisited].Method parameters in org.apache.bcel.verifier.structurals with type arguments of type InstructionContextModifier and TypeMethodDescriptionvoid
Pass3bVerifier.InstructionContextQueue.add
(InstructionContext ic, ArrayList<InstructionContext> executionChain) Adds an (InstructionContext, ExecutionChain) pair to this queue.boolean
ControlFlowGraph.InstructionContextImpl.execute
(Frame inFrame, ArrayList<InstructionContext> execPreds, InstConstraintVisitor icv, ExecutionVisitor ev) "Merges in" (vmspec2, page 146) the "incoming" frame situation; executes the instructions symbolically and therefore calculates the "outgoing" frame situation.boolean
InstructionContext.execute
(Frame inFrame, ArrayList<InstructionContext> executionPredecessors, InstConstraintVisitor icv, ExecutionVisitor ev) This method symbolically executes the Instruction held in the InstructionContext.ControlFlowGraph.InstructionContextImpl.getOutFrame
(ArrayList<InstructionContext> execChain) Returns a clone of the "outgoing" frame situation with respect to the given ExecutionChain.InstructionContext.getOutFrame
(ArrayList<InstructionContext> executionPredecessors) This method returns the outgoing execution frame situation; therefore it has to be calculated by execute(Frame, ArrayList) first.