Class AbstractLabeledGraph<T,U>
java.lang.Object
com.ibm.wala.util.graph.AbstractGraph<T>
com.ibm.wala.util.graph.labeled.AbstractLabeledGraph<T,U>
- All Implemented Interfaces:
EdgeManager<T>
,Graph<T>
,LabeledEdgeManager<T,
,U> LabeledGraph<T,
,U> NodeManager<T>
,Iterable<T>
public abstract class AbstractLabeledGraph<T,U>
extends AbstractGraph<T>
implements LabeledGraph<T,U>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
adds an edge with some labelgetEdgeLabels
(T src, T dst) Returns a set of all labeled edges between node src and node dstprotected abstract LabeledEdgeManager
<T, U> getPredLabels
(T N) int
getPredNodeCount
(T N, U label) Return the number ofimmediate predecessor
nodes of this Node in the Graph on edges with some label.getPredNodes
(T N, U label) Return an Iterator over the immediate predecessor nodes of this Node in the Graph on edges with some label.getSuccLabels
(T N) int
getSuccNodeCount
(T N, U label) Return the number ofimmediate successor
nodes of this Node in the GraphgetSuccNodes
(T N, U label) Return an Iterator over the immediate successor nodes of this Node in the Graph on edges with some label.boolean
void
removeEdge
(T src, T dst, U label) Methods inherited from class com.ibm.wala.util.graph.AbstractGraph
addEdge, addNode, containsNode, edgeString, getNodeManager, getNumberOfNodes, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, iterator, nodeString, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeNode, removeNodeAndEdges, removeOutgoingEdges, stream, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.ibm.wala.util.graph.EdgeManager
addEdge, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeOutgoingEdges
Methods inherited from interface com.ibm.wala.util.graph.Graph
removeNodeAndEdges
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface com.ibm.wala.util.graph.labeled.LabeledEdgeManager
getDefaultLabel, getPredNodes
Methods inherited from interface com.ibm.wala.util.graph.NodeManager
addNode, containsNode, getNumberOfNodes, iterator, removeNode, stream
-
Constructor Details
-
AbstractLabeledGraph
public AbstractLabeledGraph()
-
-
Method Details
-
getEdgeManager
- Specified by:
getEdgeManager
in classAbstractGraph<T>
- Returns:
- the object which manages edges in the graph
-
addEdge
Description copied from interface:LabeledEdgeManager
adds an edge with some label- Specified by:
addEdge
in interfaceLabeledEdgeManager<T,
U>
-
getPredLabels
- Specified by:
getPredLabels
in interfaceLabeledEdgeManager<T,
U> - Returns:
- the labels on edges whose destination is N
-
getPredNodeCount
Description copied from interface:LabeledEdgeManager
Return the number ofimmediate predecessor
nodes of this Node in the Graph on edges with some label.- Specified by:
getPredNodeCount
in interfaceLabeledEdgeManager<T,
U> - Returns:
- the number of immediate predecessor Nodes of this Node in the Graph.
-
getPredNodes
Description copied from interface:LabeledEdgeManager
Return an Iterator over the immediate predecessor nodes of this Node in the Graph on edges with some label.This method never returns
null
.- Specified by:
getPredNodes
in interfaceLabeledEdgeManager<T,
U> - Returns:
- an Iterator over the immediate predecessor nodes of this Node.
-
getSuccLabels
- Specified by:
getSuccLabels
in interfaceLabeledEdgeManager<T,
U> - Returns:
- the labels on edges whose source is N
-
getSuccNodeCount
Description copied from interface:LabeledEdgeManager
Return the number ofimmediate successor
nodes of this Node in the Graph- Specified by:
getSuccNodeCount
in interfaceLabeledEdgeManager<T,
U> - Returns:
- the number of immediate successor Nodes of this Node in the Graph.
-
getSuccNodes
Description copied from interface:LabeledEdgeManager
Return an Iterator over the immediate successor nodes of this Node in the Graph on edges with some label.This method never returns
null
.- Specified by:
getSuccNodes
in interfaceLabeledEdgeManager<T,
U> - Returns:
- an Iterator over the immediate successor Nodes of this Node.
-
hasEdge
-
removeEdge
- Specified by:
removeEdge
in interfaceLabeledEdgeManager<T,
U>
-
getEdgeLabels
Description copied from interface:LabeledEdgeManager
Returns a set of all labeled edges between node src and node dst- Specified by:
getEdgeLabels
in interfaceLabeledEdgeManager<T,
U> - Parameters:
src
- source node of the edgedst
- target node of the edge- Returns:
- Set of edge labels
-