pub mod debug;
pub mod extract;
pub mod neutralize;
pub mod node;
pub mod parser;
pub mod position;
pub mod prose;
mod specs;
pub use node::*;
pub use position::LineIndex;
pub struct ParsedTex {
pub source: String,
pub chars: Vec<char>,
pub nodes: Vec<Node>,
pub line_offset: u32,
}
pub fn parse_tex_source(source: &str) -> ParsedTex {
let preprocessed = neutralize::preprocess(source);
let (nodes, chars) = parser::parse(&preprocessed);
ParsedTex {
source: preprocessed,
chars,
nodes,
line_offset: 0,
}
}