sota.ast.nodes
Class ASTBranchNode

java.lang.Object
  extended by sota.ast.nodes.ASTNode
      extended by sota.ast.nodes.ASTStatementNode
          extended by sota.ast.nodes.ASTBranchNode
All Implemented Interfaces:
java.lang.Comparable<ASTNode>, IStatementNode
Direct Known Subclasses:
ASTIfNode, ASTIterationNode, ASTSwitchNode, ASTTryNode

public abstract class ASTBranchNode
extends ASTStatementNode

Superklasse für Knoten mit Verzweigung abgeleitete Klassen: ASTIfNode, ASTIterationNode, ASTSwitchNode, ASTTryNode .. ASTNode entryNode (ASTLabelNode) ASTBranchNode this > .. ASTStatementNode endNode ..


Field Summary
protected  ASTStatementNode endNode
           
protected  ASTNode entryNode
          Bei der Konstruktion zu setzende Informationen und Verknüpfungen *
protected  java.util.HashSet<java.util.ArrayList<java.lang.Integer>> setOfBIPaths
           
protected  java.util.HashSet<ASTNode> setOfExitNodes
           
protected  java.util.HashSet<ASTNode> setOfFollowUpNodes
           
 
Fields inherited from class sota.ast.nodes.ASTStatementNode
endOfStatement, nrHits
 
Fields inherited from class sota.ast.nodes.ASTNode
ascContent, BRANCH, CASE, CATCH, CONDITION, content, controlingBranchNode, DO, functionNode, id, IF, isDirectReachable, isReachable, isVirtual, ITERATION, JUMP, lineNr, next, NODE, prev, SCOPE, STATEMENT, SWITCH, TRY
 
Constructor Summary
ASTBranchNode(int ln, java.lang.String s)
           
 
Method Summary
 void addExitNode(ASTNode n)
           
 void addFollowUpNode(ASTNode n)
           
abstract  void completeNode()
           
 ASTStatementNode getEndNode()
           
 ASTNode getEntryNode()
           
 java.lang.String getExitString()
           
 java.util.HashSet<ASTNode> getSetOfExitNodes()
           
 java.util.HashSet<ASTNode> getSetOfFollowUpNodes()
           
 boolean isWithinBranchConstruct(int i)
           
 void printExits()
           
 void setEndNode(ASTStatementNode en)
           
 void setEntryNode(ASTNode en)
           
 
Methods inherited from class sota.ast.nodes.ASTStatementNode
decNrHits, getEndOfStatement, getNodeString, getNrHits, incNrHits, incNrHits, isSepareted, printCFG, printNode, resetHits, setEndOfStatement, setNrHits
 
Methods inherited from class sota.ast.nodes.ASTNode
appendToASCContent, compareTo, createASCContent, getASCContent, getContent, getControlingBranchNode, getFunctionNode, getID, getLineNr, getNextNode, getPrevNode, getReachString, getType, isDirectReachable, isDirectReachable, isReachable, isReachable, isVirtual, isVirtual, print, printReach, setASCContent, setContent, setControlingBranchNode, setFunctionNode, setID, setNextNode, setPrevNode, typeToString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface sota.ast.nodes.IStatementNode
getID, print
 

Field Detail

endNode

protected ASTStatementNode endNode

entryNode

protected ASTNode entryNode
Bei der Konstruktion zu setzende Informationen und Verknüpfungen *


setOfBIPaths

protected java.util.HashSet<java.util.ArrayList<java.lang.Integer>> setOfBIPaths

setOfExitNodes

protected java.util.HashSet<ASTNode> setOfExitNodes

setOfFollowUpNodes

protected java.util.HashSet<ASTNode> setOfFollowUpNodes
Constructor Detail

ASTBranchNode

public ASTBranchNode(int ln,
                     java.lang.String s)
Method Detail

addExitNode

public void addExitNode(ASTNode n)

addFollowUpNode

public void addFollowUpNode(ASTNode n)

completeNode

public abstract void completeNode()

getEndNode

public ASTStatementNode getEndNode()

getEntryNode

public ASTNode getEntryNode()

getExitString

public java.lang.String getExitString()

getSetOfExitNodes

public java.util.HashSet<ASTNode> getSetOfExitNodes()

getSetOfFollowUpNodes

public java.util.HashSet<ASTNode> getSetOfFollowUpNodes()

isWithinBranchConstruct

public boolean isWithinBranchConstruct(int i)

printExits

public void printExits()

setEndNode

public void setEndNode(ASTStatementNode en)

setEntryNode

public void setEntryNode(ASTNode en)