|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--soot.toolkits.graph.HashMutableDirectedGraph
HashMap based implementation of a MutableBlockGraph.
| Field Summary | |
protected Chain |
heads
|
protected java.util.HashMap |
nodeToPreds
|
protected java.util.HashMap |
nodeToSuccs
|
protected Chain |
tails
|
| Constructor Summary | |
HashMutableDirectedGraph()
|
|
| Method Summary | |
void |
addEdge(java.lang.Object from,
java.lang.Object to)
Adds an edge to the graph between 2 nodes. |
void |
addNode(java.lang.Object node)
Adds a node to the graph. |
void |
clearAll()
Removes all nodes and edges. |
java.lang.Object |
clone()
|
boolean |
containsEdge(java.lang.Object from,
java.lang.Object to)
|
boolean |
containsNode(java.lang.Object node)
|
java.util.List |
getHeads()
Returns a list of entry points for this graph. |
java.util.List |
getNodes()
|
java.util.List |
getPredsOf(java.lang.Object s)
Returns a list of predecessors for the given node in the graph. |
java.util.List |
getSuccsOf(java.lang.Object s)
Returns a list of successors for the given node in the graph. |
java.util.List |
getTails()
Returns a list of exit points for this graph. |
java.util.Iterator |
iterator()
Returns an iterator for the nodes in this graph. |
void |
printGraph()
|
void |
removeEdge(java.lang.Object from,
java.lang.Object to)
Removes an edge between 2 nodes in the graph. |
void |
removeNode(java.lang.Object node)
Removes a node from the graph. |
int |
size()
Returns the node count for this graph. |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected java.util.HashMap nodeToPreds
protected java.util.HashMap nodeToSuccs
protected Chain heads
protected Chain tails
| Constructor Detail |
public HashMutableDirectedGraph()
| Method Detail |
public void clearAll()
public java.lang.Object clone()
clone in class java.lang.Objectpublic java.util.List getHeads()
DirectedGraph
getHeads in interface DirectedGraphpublic java.util.List getTails()
DirectedGraph
getTails in interface DirectedGraphpublic java.util.List getPredsOf(java.lang.Object s)
DirectedGraph
getPredsOf in interface DirectedGraphpublic java.util.List getSuccsOf(java.lang.Object s)
DirectedGraph
getSuccsOf in interface DirectedGraphpublic int size()
DirectedGraph
size in interface DirectedGraphpublic java.util.Iterator iterator()
DirectedGraph
iterator in interface DirectedGraph
public void addEdge(java.lang.Object from,
java.lang.Object to)
MutableDirectedGraph
addEdge in interface MutableDirectedGraphfrom - out node for the edge.to - in node for the edge.
public void removeEdge(java.lang.Object from,
java.lang.Object to)
MutableDirectedGraph
removeEdge in interface MutableDirectedGraphfrom - out node for the edge to remove.to - in node for the edge to remove.
public boolean containsEdge(java.lang.Object from,
java.lang.Object to)
containsEdge in interface MutableDirectedGraphpublic boolean containsNode(java.lang.Object node)
containsNode in interface MutableDirectedGraphnode - node that we want to know if the graph constains.
public java.util.List getNodes()
getNodes in interface MutableDirectedGraphpublic void addNode(java.lang.Object node)
MutableDirectedGraph
addNode in interface MutableDirectedGraphnode - a node to add to the graph.DirectedGraph.getHeads(),
DirectedGraph.getTails()public void removeNode(java.lang.Object node)
MutableDirectedGraph
removeNode in interface MutableDirectedGraphnode - the node to be removed.public void printGraph()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||