adjacency_list/
lib.rs

1#![deny(missing_debug_implementations, missing_copy_implementations)]
2// #![warn(missing_docs, rustdoc::missing_crate_level_docs)]
3#![doc = include_str!("../readme.md")]
4#![doc(html_logo_url = "https://raw.githubusercontent.com/oovm/shape-rs/dev/projects/images/Trapezohedron.svg")]
5#![doc(html_favicon_url = "https://raw.githubusercontent.com/oovm/shape-rs/dev/projects/images/Trapezohedron.svg")]
6
7mod iters;
8mod sparse_edges;
9mod sparse_nodes;
10pub(crate) mod utils;
11
12pub use crate::{
13    sparse_edges::{one_way_iter::*, AdjacencyEdgeDict},
14    sparse_nodes::AdjacencyNodeList,
15};
16
17/// Sparse adjacency list, edge-first directed graph
18pub type DiGraphAED = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_one_way() }>;
19/// Sparse adjacency list, edge-first undirected graph
20pub type UnGraphAED = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_two_way() }>;
21/// Sparse adjacency list, node-first directed graph
22pub type DiGraphAND = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_one_way() }>;
23/// Sparse adjacency list, node-first undirected graph
24pub type UnGraphAND = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_two_way() }>;
25/// Dense adjacency list, edge-first directed graph
26pub type DiGraphAEL = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_one_way() }>;
27/// Dense adjacency list, edge-first undirected graph
28pub type UnGraphAEL = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_two_way() }>;
29/// Dense adjacency list, node-first directed graph
30pub type DiGraphANL = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_one_way() }>;
31/// Dense adjacency list, node-first undirected graph
32pub type UnGraphANL = AdjacencyEdgeDict<{ graph_types::GraphKind::Directed.is_two_way() }>;