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 classObjects 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.ecsThe second elements from pairs in the queue.private List<InstructionContext> ControlFlowGraph.InstructionContextImpl.executionPredecessorsThe '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.icsThe first elements from pairs in the queue.private final Map<InstructionContext, Frame> ControlFlowGraph.InstructionContextImpl.inFramesThe 'incoming' execution Frames.private final Map<InstructionHandle, InstructionContext> ControlFlowGraph.instructionContextsAll InstructionContext instances of this ControlFlowGraph.private final Map<InstructionContext, Frame> ControlFlowGraph.InstructionContextImpl.outFramesThe '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 TypeMethodDescriptionvoidPass3bVerifier.InstructionContextQueue.add(InstructionContext ic, ArrayList<InstructionContext> executionChain) Adds an (InstructionContext, ExecutionChain) pair to this queue.private voidPass3bVerifier.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 TypeMethodDescriptionvoidPass3bVerifier.InstructionContextQueue.add(InstructionContext ic, ArrayList<InstructionContext> executionChain) Adds an (InstructionContext, ExecutionChain) pair to this queue.booleanControlFlowGraph.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.booleanInstructionContext.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.