public class IfStatementCFGInfo extends CFGInfo
CFGInfo.NodeWithStack
Constructor and Description |
---|
IfStatementCFGInfo(Node owner) |
Modifier and Type | Method and Description |
---|---|
java.util.ArrayList<Node> |
getAllComponents()
Obtain the various CFG components of the
owner node. |
Statement |
getElseBody() |
Expression |
getPredicate() |
Statement |
getThenBody() |
boolean |
hasElseBody() |
void |
removeElseBody() |
java.util.ArrayList<UpdateSideEffects> |
setElseBody(Statement stmt) |
void |
setPredicate(Expression predicate) |
java.util.ArrayList<UpdateSideEffects> |
setThenBody(Statement stmt) |
private void |
updateCFGForElseBodyInsertion(Statement added) |
private void |
updateCFGForElseBodyRemoval(Statement removed) |
private void |
updateCFGForPredicateInsertion(Expression added) |
private void |
updateCFGForPredicateRemoval(Expression removed) |
private void |
updateCFGForThenBodyInsertion(Statement added) |
private void |
updateCFGForThenBodyRemoval(Statement removed) |
clearAllEdges, clearPredBlocks, clearSuccBlocks, connect, deprecated_getPred, deprecated_getSucc, disconnect, getCopy, getInterProceduralLeafPredecessors, getInterProceduralLeafPredecessors, getInterProceduralLeafSuccessors, getInterProceduralLeafSuccessors, getInterTaskLeafPredecessorEdges, getInterTaskLeafPredecessorNodes, getInterTaskLeafSuccessorEdges, getInterTaskLeafSuccessorNodes, getIntraTaskCFGLeafContents, getIntraTaskCFGLeafContents, getIntraTaskCFGLeafContentsOfSameParLevel, getIntraTaskCFGLeafReachablesBackward, getIntraTaskCFGLeafReachablesForward, getLexicalIntraProceduralCFGContents, getLexicalIntraProceduralCFGLeafContents, getNestedCFG, getOwner, getParallelConstructFreeInterProceduralLeafPredecessors, getParallelConstructFreeInterProceduralLeafSuccessors, getPredBlocks, getPredecessors, getSuccBlocks, getSuccessors, isEndReachable, setNestedCFG, setOwner
public IfStatementCFGInfo(Node owner)
public void setPredicate(Expression predicate)
public Expression getPredicate()
public java.util.ArrayList<UpdateSideEffects> setThenBody(Statement stmt)
public Statement getThenBody()
public java.util.ArrayList<UpdateSideEffects> setElseBody(Statement stmt)
public Statement getElseBody()
public boolean hasElseBody()
public void removeElseBody()
private void updateCFGForPredicateRemoval(Expression removed)
private void updateCFGForPredicateInsertion(Expression added)
private void updateCFGForThenBodyRemoval(Statement removed)
private void updateCFGForThenBodyInsertion(Statement added)
private void updateCFGForElseBodyRemoval(Statement removed)
private void updateCFGForElseBodyInsertion(Statement added)
public java.util.ArrayList<Node> getAllComponents()
owner
node.getAllComponents
in class CFGInfo
owner
node.