mod db;
mod render;
#[cfg(test)]
mod tests;
pub(crate) use db::KanbanDb;
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, true)
}
fn parse_kanban(src: &str, db: &mut KanbanDb) -> Result<(), Error> {
parse_outline(src, db, true)
}
pub(crate) fn parse(source: &str, title: Option<&str>) -> Result<KanbanDb, Error> {
let mut db = KanbanDb::default();
db.title = title.map(str::to_string);
parse_kanban(source, &mut db)?;
Ok(db)
}