Module rs_graph::graph[][src]

Traits for graph data structures.

The traits for graph data structures provide an additional level of information about (the edges of) the graph. There are three levels:

  1. Graph: an undirected graph, edges have no defined source or sink.
  2. Digraph: a directed graph, each edge has a designated source and a designated sink node. Furthermore, there is the concept of "outgoing" and "incoming" edges. A Digraph is also a Graph, which basically means ignoring the direction information of the edges.
  3. Network: a network is a directed graph, but each edge is actually a pair of edges: the normally directed edge and its reverse edge. Edge and reverse edge are considered equal for all purposes of a digraph (e.g. source and sink node are always source and sink of the forward edge), but the additional "reverse" information can be obtained by the methods of Network. Furthermore, if the network is an IndexNetwork, a BiEdgeVec can be used to store different values for edges and the reverse edges (in contrast, an EdgeVec always contains the same value for an edge and its reverse edge).

Re-exports

pub use vec::IndexBiEdgeSlice;
pub use vec::IndexEdgeSlice;
pub use vec::IndexNodeSlice;
pub use vec::IndexBiEdgeVec;
pub use vec::IndexEdgeVec;
pub use vec::IndexNodeVec;

Traits

BiNumberedEdge

An edge in a graph with a direct biindex.

Digraph

Trait for a general directed graph.

Edge

An edge in a graph.

Graph

Trait for a general undirected graph.

IndexDigraph

A Digraph that is also an IndexGraph.

IndexGraph

Associates nodes and edges with unique ids.

IndexNetwork

Associates edges with unique ids for forward and backward edge.

Network

A network.

Node

A node in a graph.

NumberedDigraph

Marker trait for digraphs with directly numbered nodes and edges.

NumberedEdge

An edge in a graph with a direct index.

NumberedGraph

Marker trait for graphs with directly numbered nodes and edges.

NumberedNetwork

Marker trait for networks with directly numbered nodes and edges.

NumberedNode

A node in a graph with a direct index.