private class SymbolicExecutionTreeBuilder.AnalyzerProofVisitor extends Object implements ProofVisitor
ProofVisitor is used to transfer the proof tree in KeY
into IExecutionNodes which forms the symbolic execution tree.| Modifier and Type | Field and Description |
|---|---|
private Map<Node,AbstractExecutionNode<?>> |
addToMapping
Maps the
Node in KeY's proof tree to the IExecutionNode of the symbolic execution tree where the Nodes children should be added to. |
private SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions |
completions
The
SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions to update. |
private Map<AbstractExecutionNode<?>,List<ExecutionBranchCondition>> |
parentToBranchConditionMapping
This utility
Map helps to find a List in SymbolicExecutionTreeBuilder.branchConditionsStack
for the given parent node to that elements in the List should be added. |
| Constructor and Description |
|---|
AnalyzerProofVisitor(SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions completions)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
completeTree()
Completes the execution tree model after all
Nodes were visited
in visit(Proof, Node). |
protected void |
finishBlockCompletion(IExecutionBranchCondition node) |
void |
visit(Proof proof,
Node visitedNode) |
private final SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions completions
SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions to update.private Map<Node,AbstractExecutionNode<?>> addToMapping
Node in KeY's proof tree to the IExecutionNode of the symbolic execution tree where the Nodes children should be added to.private Map<AbstractExecutionNode<?>,List<ExecutionBranchCondition>> parentToBranchConditionMapping
Map helps to find a List in SymbolicExecutionTreeBuilder.branchConditionsStack
for the given parent node to that elements in the List should be added.public AnalyzerProofVisitor(SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions completions)
completions - The SymbolicExecutionTreeBuilder.SymbolicExecutionCompletions to update.public void visit(Proof proof, Node visitedNode)
visit in interface ProofVisitorpublic void completeTree()
Completes the execution tree model after all Nodes were visited
in visit(Proof, Node). The task of this method is to add
ExecutionBranchCondition to the model if they have at least one child.
Fore more details have a look at the documentation of SymbolicExecutionTreeBuilder.branchConditionsStack.
protected void finishBlockCompletion(IExecutionBranchCondition node)