Class AbstractNumberedGraph<T>
java.lang.Object
com.ibm.wala.util.graph.AbstractGraph<T>
com.ibm.wala.util.graph.AbstractNumberedGraph<T>
- All Implemented Interfaces:
EdgeManager<T>, Graph<T>, NodeManager<T>, NumberedEdgeManager<T>, NumberedGraph<T>, NumberedNodeManager<T>, Iterable<T>
- Direct Known Subclasses:
AbstractNumberedLabeledGraph, BasicCallGraph, ControlDependenceGraph, DelegatingCFG, DelegatingNumberedGraph, EdgeFilteredNumberedGraph, InvertedNumberedGraph, PrunedCFG, SDG, SlowSparseNumberedGraph, SparseNumberedGraph
Basic functionality for a graph that delegates node and edge management, and tracks node numbers
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract NumberedEdgeManager<T> intgetNode(int number) protected abstract NumberedNodeManager<T> intgetPredNodeNumbers(@Nullable T node) getSuccNodeNumbers(@Nullable T node) Methods inherited from class AbstractGraph
addEdge, addNode, containsNode, edgeString, getNumberOfNodes, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, iterator, nodeString, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeNode, removeNodeAndEdges, removeOutgoingEdges, stream, toStringMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface EdgeManager
addEdge, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeOutgoingEdgesMethods inherited from interface Graph
removeNodeAndEdgesMethods inherited from interface Iterable
forEach, spliteratorMethods inherited from interface NodeManager
addNode, containsNode, getNumberOfNodes, iterator, removeNode, stream
-
Constructor Details
-
AbstractNumberedGraph
public AbstractNumberedGraph()
-
-
Method Details
-
getNodeManager
- Specified by:
getNodeManagerin classAbstractGraph<T>- Returns:
- the object which manages nodes in the graph
-
getEdgeManager
- Specified by:
getEdgeManagerin classAbstractGraph<T>- Returns:
- the object which manages edges in the graph
-
getMaxNumber
public int getMaxNumber()- Specified by:
getMaxNumberin interfaceNumberedNodeManager<T>- See Also:
-
getNode
- Specified by:
getNodein interfaceNumberedNodeManager<T>- See Also:
-
getNumber
- Specified by:
getNumberin interfaceNumberedNodeManager<T>- See Also:
-
iterateNodes
- Specified by:
iterateNodesin interfaceNumberedNodeManager<T>- Returns:
- iterator of nodes with the numbers in set s
- See Also:
-
getPredNodeNumbers
- Specified by:
getPredNodeNumbersin interfaceNumberedEdgeManager<T>- Returns:
- the numbers identifying the immediate predecessors of node
- Throws:
IllegalArgumentException- See Also:
-
getSuccNodeNumbers
- Specified by:
getSuccNodeNumbersin interfaceNumberedEdgeManager<T>- Returns:
- the numbers identifying the immediate successors of node
- Throws:
IllegalArgumentException- See Also:
-