dot2/
lib.rs

1#![warn(warnings)]
2#![doc = include_str!("../README.md")]
3
4pub mod label;
5
6mod arrow;
7mod errors;
8mod fill;
9mod graph_walk;
10mod id;
11mod kind;
12mod render;
13mod side;
14mod style;
15
16pub use arrow::Arrow;
17pub use errors::*;
18pub use fill::Fill;
19pub use graph_walk::GraphWalk;
20pub use id::Id;
21pub use kind::Kind;
22pub use label::Labeller;
23pub use render::{render, render_opts};
24pub use side::Side;
25pub use style::Style;
26
27/// Escape tags in such a way that it is suitable for inclusion in a
28/// Graphviz HTML label.
29pub fn escape_html(s: &str) -> String {
30    s.replace('&', "&")
31        .replace('\"', """)
32        .replace('<', "&lt;")
33        .replace('>', "&gt;")
34}
35
36pub type Nodes<'a, N> = std::borrow::Cow<'a, [N]>;
37pub type Edges<'a, E> = std::borrow::Cow<'a, [E]>;
38pub type Subgraphs<'a, S> = std::borrow::Cow<'a, [S]>;
39
40#[cfg(test)]
41mod tests;