This crate implements standard graph algorithms without requiring a specific graph representation.
It's quite common for graph structures to be defined implicitly by other data structures. This crate lets you run standard graph algorithms without having to translate your data structures into a specific graph representation.
To define a graph, implement the
DirectedGraph trait on some
data structure can be treated as agraph. You can then run the
various generic graph algorithms which take a generic type
Breadth First Search
Depth First Search
An iterator through the neighbors of a given node (nodes reachable by a single edge transition from the given node) in a graph.
A trivial graph edge representation, whose only information is the destination node
A trivial wrapper around an iterator across nodes, changing it to
an iterator across
The trait for types (implicitly or explicitly) representing a directed graph structure
The trait for types representing a single graph edge from a known graph node