1#![doc(html_root_url = "https://docs.rs/fera-graph/0.2.0/")]
6#![cfg_attr(feature = "cargo-clippy", allow(inline_always))]
7
8#[cfg(test)]
11extern crate itertools;
12
13#[cfg(feature = "quickcheck")]
14extern crate quickcheck;
15
16extern crate fera_fun;
17extern crate fera_optional;
18extern crate fera_unionfind;
19extern crate num_traits;
20extern crate rand;
21
22#[cfg(test)]
23#[macro_use]
24pub mod tests;
25
26#[macro_use]
28pub mod builder;
29
30#[macro_use]
31pub mod params;
32
33pub mod algs;
34pub mod graphs;
35pub mod props;
36pub mod traverse;
37
38#[cfg(feature = "quickcheck")]
40pub mod arbitrary;
41pub mod choose;
42pub mod ext;
43pub mod sets;
44pub mod unionfind;
45
46mod fun;
47pub use fun::*;
48
49pub mod prelude {
51 pub use builder::{Builder, WithBuilder};
52 pub use ext::{GraphsSliceExt, GraphsVecExt};
53 pub use fera_optional::Optional;
54 pub use graphs::adaptors::{SpanningSubgraph, Subgraph, WithSubgraph};
55 pub use graphs::adjset::{AdjSetDigraph, AdjSetGraph};
56 pub use graphs::complete::{CompleteDigraph, CompleteGraph};
57 pub use graphs::static_::{StaticDigraph, StaticGraph};
58 pub use graphs::{
59 Adjacency, AdjacencyDigraph, AdjacencyGraph, DefaultEdgePropMut, DefaultVertexPropMut,
60 Digraph, Directed, Edge, EdgeIndexProp, EdgeIter, EdgeKind, EdgeList, EdgeTypes, Graph,
61 GraphItem, Incidence, IncidenceDigraph, IncidenceGraph, Mixed, OptionEdge, OptionVertex,
62 Orientation, OutEdgeIter, OutNeighborIter, Undirected, UniformEdgeKind, Vertex,
63 VertexIndexProp, VertexIter, VertexList, VertexTypes, WithEdge, WithVertex,
64 };
65 pub use props::{
66 BasicEdgeProps, BasicProps, BasicVertexProps, EdgeProp, EdgePropGet, EdgePropMut,
67 EdgePropMutNew, PropGet, PropIndexMut, VertexProp, VertexPropGet, VertexPropMut,
68 VertexPropMutNew, WithEdgeIndexProp, WithEdgeProp, WithVertexIndexProp, WithVertexProp,
69 };
70}