Expand description
Most of the functionality of this library is encapsulated in these traits. A quick overview:
GraphBasics: Provides iterators over nodes and edges. MatrixRepresentation: Adjacency and incidence matrices. GraphProperties: Basic properties of graphs, such as degree, connected components, etc. DiGraphProperties: The directed analogue of GraphProperties. HypergraphProperties: Properties specific to hypergraphs, such as edge order. DirectedHypergraphProperties: Directed analogue of HypergraphProperties.
In principle, none of these traits borrow the graph mutably. All mutation is done though struct methods, because the function signatures vary too much between different graph types.
Re-exports§
pub use undirected::*;pub use directed::*;
Modules§
Traits§
- Dynamics
- Generate
- Graph
Basics - The root trait for all graphs and hypergraphs. Provides functions to iterate over nodes and edges, and count them.
- Hypergraph
Basics - Matrix
Representation - The root trait for all algebraic operations on graphs. Provides methods to convert graphs into various matrix representations.
- Statistical
Filters - Weights
Mut - This trait allows mutable access to the node and edge weights of a graph.
It’s generally a bad idea to mess with the graph incidence data - that’s why there’s no
mutable access to
Nodes orEdges. You can, however, go crazy with the weights.