Top Description Fields Constructors Methods
com.google.common.graph

pack-priv final Class UndirectedMultiNetworkConnections<N, E>

extends AbstractUndirectedNetworkConnections<N, E>
Class Inheritance
Annotations
@ElementTypesAreNonnullByDefault
Type Parameters
<N>
Node parameter type
<E>
Edge parameter type
Static Imports
com.google.common.base.Preconditions.checkState, com.google.common.graph.GraphConstants.INNER_CAPACITY, .GraphConstants.INNER_LOAD_FACTOR

An implementation of NetworkConnections for undirected networks with parallel edges.
Author
James Sexton

Field Summary

Modifier and TypeField and Description
private transient Reference<Multiset<N>>
Inherited from com.google.common.graph.AbstractUndirectedNetworkConnections:
incidentEdgeMap

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public void
addInEdge(E edge, N node, boolean isSelfLoop)

Overrides com.google.common.graph.AbstractUndirectedNetworkConnections.addInEdge.

Implements com.google.common.graph.NetworkConnections.addInEdge.

Add edge to the set of incoming edges.
public void
public Set<N>
private Multiset<N>
public Set<E>
edgesConnecting(N node)

Implements com.google.common.graph.NetworkConnections.edgesConnecting.

Returns the set of edges connecting the origin node to node.
private static <T> T
getReference(Reference<T> reference)

pack-priv static <N, E> UndirectedMultiNetworkConnections<N, E>
of()

pack-priv static <N, E> UndirectedMultiNetworkConnections<N, E>
ofImmutable(Map<E, N> incidentEdges)

public N
removeInEdge(E edge, boolean isSelfLoop)

Overrides com.google.common.graph.AbstractUndirectedNetworkConnections.removeInEdge.

Implements com.google.common.graph.NetworkConnections.removeInEdge.

Remove edge from the set of incoming edges.
public N
Inherited from com.google.common.graph.AbstractUndirectedNetworkConnections:
adjacentNodeincidentEdgesinEdgesoutEdgespredecessorssuccessors

Field Detail

adjacentNodesReferenceback to summary
private transient Reference<Multiset<N>> adjacentNodesReference
Annotations
@CheckForNull
@LazyInit

Constructor Detail

UndirectedMultiNetworkConnectionsback to summary
private UndirectedMultiNetworkConnections(Map<E, N> incidentEdges)

Method Detail

addInEdgeback to summary
public void addInEdge(E edge, N node, boolean isSelfLoop)

Overrides com.google.common.graph.AbstractUndirectedNetworkConnections.addInEdge.

Implements com.google.common.graph.NetworkConnections.addInEdge.

Doc from com.google.common.graph.NetworkConnections.addInEdge.

Add edge to the set of incoming edges. Implicitly adds node as a predecessor.

Annotations
@Override
addOutEdgeback to summary
public void addOutEdge(E edge, N node)

Overrides com.google.common.graph.AbstractUndirectedNetworkConnections.addOutEdge.

Implements com.google.common.graph.NetworkConnections.addOutEdge.

Doc from com.google.common.graph.NetworkConnections.addOutEdge.

Add edge to the set of outgoing edges. Implicitly adds node as a successor.

Annotations
@Override
adjacentNodesback to summary
public Set<N> adjacentNodes()

Implements com.google.common.graph.NetworkConnections.adjacentNodes.

Annotations
@Override
adjacentNodesMultisetback to summary
private Multiset<N> adjacentNodesMultiset()
edgesConnectingback to summary
public Set<E> edgesConnecting(N node)

Implements com.google.common.graph.NetworkConnections.edgesConnecting.

Doc from com.google.common.graph.NetworkConnections.edgesConnecting.

Returns the set of edges connecting the origin node to node. For networks without parallel edges, this set cannot be of size greater than one.

Annotations
@Override
getReferenceback to summary
private static <T> T getReference(Reference<T> reference)
Annotations
@CheckForNull
ofback to summary
pack-priv static <N, E> UndirectedMultiNetworkConnections<N, E> of()
ofImmutableback to summary
pack-priv static <N, E> UndirectedMultiNetworkConnections<N, E> ofImmutable(Map<E, N> incidentEdges)
removeInEdgeback to summary
public N removeInEdge(E edge, boolean isSelfLoop)

Overrides com.google.common.graph.AbstractUndirectedNetworkConnections.removeInEdge.

Implements com.google.common.graph.NetworkConnections.removeInEdge.

Doc from com.google.common.graph.NetworkConnections.removeInEdge.

Remove edge from the set of incoming edges. Returns the former predecessor node.

In the undirected case, returns null if isSelfLoop is true.

Annotations
@Override
@CheckForNull
removeOutEdgeback to summary
public N removeOutEdge(E edge)

Overrides com.google.common.graph.AbstractUndirectedNetworkConnections.removeOutEdge.

Implements com.google.common.graph.NetworkConnections.removeOutEdge.

Doc from com.google.common.graph.NetworkConnections.removeOutEdge.

Remove edge from the set of outgoing edges. Returns the former successor node.

Annotations
@Override