Package com.google.common.graph
Class DirectedMultiNetworkConnections<N,E>
java.lang.Object
com.google.common.graph.AbstractDirectedNetworkConnections<N,E>
com.google.common.graph.DirectedMultiNetworkConnections<N,E>
- Type Parameters:
N- Node parameter typeE- Edge parameter type
- All Implemented Interfaces:
NetworkConnections<N,E>
An implementation of
NetworkConnections for directed networks with parallel edges.-
Field Summary
FieldsModifier and TypeFieldDescriptionFields inherited from class com.google.common.graph.AbstractDirectedNetworkConnections
inEdgeMap, outEdgeMap -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAddedgeto the set of incoming edges.voidaddOutEdge(E edge, N node) Addedgeto the set of outgoing edges.edgesConnecting(N node) Returns the set of edges connecting the origin node tonode.private static <T> TgetReference(Reference<T> reference) (package private) static <N,E> DirectedMultiNetworkConnections<N, E> of()(package private) static <N,E> DirectedMultiNetworkConnections<N, E> ofImmutable(Map<E, N> inEdges, Map<E, N> outEdges, int selfLoopCount) removeInEdge(E edge, boolean isSelfLoop) Removeedgefrom the set of incoming edges.removeOutEdge(E edge) Removeedgefrom the set of outgoing edges.Methods inherited from class com.google.common.graph.AbstractDirectedNetworkConnections
adjacentNode, adjacentNodes, incidentEdges, inEdges, outEdges
-
Field Details
-
predecessorsReference
-
successorsReference
-
-
Constructor Details
-
DirectedMultiNetworkConnections
-
-
Method Details
-
of
-
ofImmutable
static <N,E> DirectedMultiNetworkConnections<N,E> ofImmutable(Map<E, N> inEdges, Map<E, N> outEdges, int selfLoopCount) -
predecessors
-
predecessorsMultiset
-
successors
-
successorsMultiset
-
edgesConnecting
Description copied from interface:NetworkConnectionsReturns the set of edges connecting the origin node tonode. For networks without parallel edges, this set cannot be of size greater than one. -
removeInEdge
Description copied from interface:NetworkConnectionsRemoveedgefrom the set of incoming edges. Returns the former predecessor node.In the undirected case, returns
nullifisSelfLoopis true.- Specified by:
removeInEdgein interfaceNetworkConnections<N,E> - Overrides:
removeInEdgein classAbstractDirectedNetworkConnections<N,E>
-
removeOutEdge
Description copied from interface:NetworkConnectionsRemoveedgefrom the set of outgoing edges. Returns the former successor node.- Specified by:
removeOutEdgein interfaceNetworkConnections<N,E> - Overrides:
removeOutEdgein classAbstractDirectedNetworkConnections<N,E>
-
addInEdge
Description copied from interface:NetworkConnectionsAddedgeto the set of incoming edges. Implicitly addsnodeas a predecessor.- Specified by:
addInEdgein interfaceNetworkConnections<N,E> - Overrides:
addInEdgein classAbstractDirectedNetworkConnections<N,E>
-
addOutEdge
Description copied from interface:NetworkConnectionsAddedgeto the set of outgoing edges. Implicitly addsnodeas a successor.- Specified by:
addOutEdgein interfaceNetworkConnections<N,E> - Overrides:
addOutEdgein classAbstractDirectedNetworkConnections<N,E>
-
getReference
-