#[derive(Clone, Eq, Hash, PartialEq)] pub enum StatementKind { Axiom, Lemma, Conjecture, } pub struct Statement<'input> { pub kind: StatementKind, pub original_text: &'input str, pub formula: foliage::Formula, } pub enum Block<'input> { Statement(Statement<'input>), Whitespace(&'input str), } pub struct Project<'input> { pub blocks: Vec>, }