|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.ibm.wala.util.graph.impl.SparseNumberedEdgeManager<T>
public final class SparseNumberedEdgeManager<T>
An object which tracks edges for nodes that have numbers.
| Constructor Summary | |
|---|---|
SparseNumberedEdgeManager(NumberedNodeManager<T> nodeManager)
|
|
SparseNumberedEdgeManager(NumberedNodeManager<T> nodeManager,
int normalCase,
byte delegateImpl)
If normalOutCount == n, this edge manager will eagerly allocated n words to hold out edges for each node. |
|
| Method Summary | |
|---|---|
void |
addEdge(T src,
T dst)
|
int |
getPredNodeCount(T N)
Return the number of immediate predecessor
nodes of this Node
in the Graph. |
IntSet |
getPredNodeNumbers(T node)
|
java.util.Iterator<T> |
getPredNodes(T N)
Return an Iterator over the immediate predecessor nodes of this Node
in the Graph. |
int |
getSuccNodeCount(int number)
|
int |
getSuccNodeCount(T N)
Return the number of immediate successor
nodes of this Node
in the Graph |
IntSet |
getSuccNodeNumbers(T node)
|
java.util.Iterator<T> |
getSuccNodes(int number)
|
java.util.Iterator<T> |
getSuccNodes(T N)
Return an Iterator over the immediate successor nodes of this Node in
the Graph |
boolean |
hasAnySuccessor(int node)
This is implemented as a shortcut for efficiency |
boolean |
hasEdge(T src,
T dst)
|
void |
removeAllIncidentEdges(T node)
|
void |
removeEdge(T src,
T dst)
|
void |
removeIncomingEdges(T node)
|
void |
removeOutgoingEdges(T node)
|
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public SparseNumberedEdgeManager(NumberedNodeManager<T> nodeManager)
nodeManager - an object to track nodes
public SparseNumberedEdgeManager(NumberedNodeManager<T> nodeManager,
int normalCase,
byte delegateImpl)
nodeManager - an object to track nodesnormalCase - what is the "normal" number of out edges for a node?| Method Detail |
|---|
public java.util.Iterator<T> getPredNodes(T N)
throws java.lang.IllegalArgumentException
EdgeManagernodes of this Node
in the Graph.
This method never returns null.
getPredNodes in interface EdgeManager<T>java.lang.IllegalArgumentException
public int getPredNodeCount(T N)
throws java.lang.IllegalArgumentException
EdgeManagerimmediate predecessor
nodes of this Node
in the Graph.
getPredNodeCount in interface EdgeManager<T>java.lang.IllegalArgumentException
public java.util.Iterator<T> getSuccNodes(T N)
throws java.lang.IllegalArgumentException
EdgeManagernodes of this Node in
the Graph
This method never returns null.
getSuccNodes in interface EdgeManager<T>java.lang.IllegalArgumentExceptionpublic java.util.Iterator<T> getSuccNodes(int number)
public IntSet getSuccNodeNumbers(T node)
throws java.lang.IllegalArgumentException
getSuccNodeNumbers in interface NumberedEdgeManager<T>java.lang.IllegalArgumentException
public IntSet getPredNodeNumbers(T node)
throws java.lang.IllegalArgumentException
getPredNodeNumbers in interface NumberedEdgeManager<T>java.lang.IllegalArgumentException
public int getSuccNodeCount(T N)
throws java.lang.IllegalArgumentException
EdgeManagerimmediate successor
nodes of this Node
in the Graph
getSuccNodeCount in interface EdgeManager<T>java.lang.IllegalArgumentExceptionpublic int getSuccNodeCount(int number)
public void addEdge(T src,
T dst)
throws java.lang.IllegalArgumentException
addEdge in interface EdgeManager<T>java.lang.IllegalArgumentException
public boolean hasEdge(T src,
T dst)
hasEdge in interface EdgeManager<T>
public void removeAllIncidentEdges(T node)
throws java.lang.IllegalArgumentException
removeAllIncidentEdges in interface EdgeManager<T>java.lang.IllegalArgumentException
public void removeIncomingEdges(T node)
throws java.lang.IllegalArgumentException
removeIncomingEdges in interface EdgeManager<T>java.lang.IllegalArgumentException
public void removeEdge(T src,
T dst)
throws java.lang.IllegalArgumentException
removeEdge in interface EdgeManager<T>java.lang.IllegalArgumentException
public void removeOutgoingEdges(T node)
throws java.lang.IllegalArgumentException
removeOutgoingEdges in interface EdgeManager<T>java.lang.IllegalArgumentExceptionpublic boolean hasAnySuccessor(int node)
node -
public java.lang.String toString()
toString in class java.lang.Object
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||