use crate::models::{hast, mdast, nlcst};
#[derive(Debug, PartialEq)]
pub enum Tree<'a> {
Mdast(mdast::Node<'a>),
Hast(hast::Node<'a>),
Nlcst(nlcst::Node<'a>),
}
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum TreeKind {
Mdast,
Hast,
Nlcst,
}
impl Tree<'_> {
pub fn kind(&self) -> TreeKind {
match self {
Tree::Mdast(_) => TreeKind::Mdast,
Tree::Hast(_) => TreeKind::Hast,
Tree::Nlcst(_) => TreeKind::Nlcst,
}
}
}