extern crate piston_meta;
use piston_meta::*;
fn main() {
let text = r#"hi James!"#;
let rules = r#"
1 say_hi = ["hi" .w? {"James":"james" "Peter":"peter"} "!"]
2 document = say_hi
"#;
// Parse rules with meta language and convert to rules for parsing text.
let rules = match syntax_errstr(rules) {
Err(err) => {
println!("{}", err);
return;
}
Ok(rules) => rules
};
let mut data = vec![];
match parse_errstr(&rules, text, &mut data) {
Err(err) => {
println!("{}", err);
return;
}
Ok(()) => {}
};
json::print(&data);
}