mod db;
mod render;
#[cfg(test)]
mod tests;
pub(crate) use db::MindmapDb;
pub(crate) use render::layout;
use crate::common::outline::parse_outline;
use crate::errors::Error;
#[cfg(test)]
fn tokenize(src: &str) -> crate::common::outline::Tokens {
crate::common::outline::tokenize(src, false)
}
fn parse_mindmap(src: &str, db: &mut MindmapDb) -> Result<(), Error> {
parse_outline(src, db, false)
}
pub(crate) fn parse(source: &str, title: Option<&str>) -> Result<MindmapDb, Error> {
let mut db = MindmapDb::default();
db.title = title.map(str::to_string);
parse_mindmap(source, &mut db)?;
Ok(db)
}