Class DiGraph<N,E>
java.lang.Object
com.google.javascript.jscomp.graph.Graph<N,E>
com.google.javascript.jscomp.graph.DiGraph<N,E>
- Type Parameters:
N- Value type that the graph node stores.E- Value type that the graph edge stores.
- All Implemented Interfaces:
AdjacencyGraph<N,E>
- Direct Known Subclasses:
LinkedDirectedGraph
A generic directed graph.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceA generic directed graph edge.static interfaceA generic directed graph node.Nested classes/interfaces inherited from class com.google.javascript.jscomp.graph.Graph
Graph.GraphEdge<N,E> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract DiGraph.DiGraphNode<N,E> createDirectedGraphNode(N nodeValue) abstract voiddisconnectInDirection(N n1, N n2) Disconnects all edges from n1 to n2.abstract List<DiGraph.DiGraphEdge<N,E>> getDirectedGraphEdges(N n1, N n2) abstract DiGraph.DiGraphNode<N,E> getDirectedGraphNode(N nodeValue) abstract Iterable<DiGraph.DiGraphNode<N,E>> Gets an immutable iterable over all the nodes in the graph.abstract List<DiGraph.DiGraphNode<N,E>> abstract List<DiGraph.DiGraphNode<N,E>> getDirectedPredNodes(N nodeValue) abstract List<DiGraph.DiGraphNode<N,E>> abstract List<DiGraph.DiGraphNode<N,E>> getDirectedSuccNodes(N nodeValue) abstract List<DiGraph.DiGraphEdge<N,E>> getInEdges(N nodeValue) Gets an immutable list of in edges of the given node.abstract List<DiGraph.DiGraphEdge<N,E>> getOutEdges(N nodeValue) Gets an immutable list of out edges of the given node.booleanisConnected(N n1, E e, N n2) Checks whether two nodes in the graph are connected by the given edge type.booleanisConnected(N n1, N n2) Checks whether two nodes in the graph are connected.abstract booleanisConnectedInDirection(N n1, E edgeValue, N n2) Checks whether two nodes in the graph are connected via a directed edge with the given value.abstract booleanisConnectedInDirection(N n1, N n2) Checks whether two nodes in the graph are connected via a directed edge.Methods inherited from class com.google.javascript.jscomp.graph.Graph
clearEdgeAnnotations, clearNodeAnnotations, connect, connectIfNotFound, createNode, disconnect, getEdges, getEdges, getFirstEdge, getNeighborNodes, getNeighborNodesIterator, getNodeDegree, getNodes, getWeight, hasNode, popEdgeAnnotations, popNodeAnnotations, pushEdgeAnnotations, pushNodeAnnotationsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.google.javascript.jscomp.graph.AdjacencyGraph
getNode, newSubGraph
-
Constructor Details
-
DiGraph
public DiGraph()
-
-
Method Details
-
getDirectedGraphNodes
Gets an immutable iterable over all the nodes in the graph. -
getOutEdges
Gets an immutable list of out edges of the given node. -
getInEdges
Gets an immutable list of in edges of the given node. -
getDirectedPredNodes
-
getDirectedSuccNodes
-
getDirectedPredNodes
-
getDirectedSuccNodes
-
createDirectedGraphNode
-
getDirectedGraphNode
-
getDirectedGraphEdges
-
disconnectInDirection
Disconnects all edges from n1 to n2.- Parameters:
n1- Source node.n2- Destination node.
-
isConnectedInDirection
Checks whether two nodes in the graph are connected via a directed edge.- Parameters:
n1- Node 1.n2- Node 2.- Returns:
trueif the graph contains edge from n1 to n2.
-
isConnectedInDirection
Checks whether two nodes in the graph are connected via a directed edge with the given value.- Parameters:
n1- Node 1.edgeValue- edge value tagn2- Node 2.- Returns:
trueif the edge exists.
-
isConnected
Description copied from class:GraphChecks whether two nodes in the graph are connected.- Specified by:
isConnectedin classGraph<N,E> - Parameters:
n1- Node 1.n2- Node 2.- Returns:
trueif the two nodes are connected.
-
isConnected
Description copied from class:GraphChecks whether two nodes in the graph are connected by the given edge type.- Specified by:
isConnectedin classGraph<N,E> - Parameters:
n1- Node 1.e- The edge type.n2- Node 2.
-