1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#![warn(missing_docs)]

//! This crate is a parser for [DOT/Graphviz](https://www.graphviz.org) files.
//! The parser strictly sticks to the grammar specified
//! [here](https://www.graphviz.org/doc/info/lang.html). The main structure is
//! `Graph`, which can be built from a DOT file. The fields (and subfields) of
//! the structure coincide with rules of the grammar.
//!
//! The crate contains two modules: `ast` and `canonical`. Both contain a
//! `Graph` structure that represent a DOT graph. In the `ast` module, the
//! `Graph` structure is an abstract syntax tree of a given DOT graph. However,
//! in practice, such graph is not easy to work with. Therefore, the `Graph`
//! structure in the `canonical` module aims to provide a canonic representation
//! of the graph, much easier to work with.

pub mod ast;
pub mod canonical;