1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
mod error; mod parser; mod transform; mod model; mod types; pub use rvs_parser::SearchPath; pub use crate::parser::Parser; pub use crate::transform::{Seed, Transform}; pub use crate::model::{Model, Variable}; pub use crate::error::{Error, Result}; pub fn parse(search_path: &SearchPath, s: &str) -> Result<Model> { let mut parser = Parser::new(search_path); parser.parse(s)?; let mut transform = Transform::new(Default::default()); let mut model = Model::new(); transform.transform(&mut model, parser.ast())?; Ok(model) }