Function dynparser::peg::rules_from_peg[][src]

pub fn rules_from_peg(peg: &str) -> Result

Given a peg set of rules on an string, it will generate the set of rules to use in the parser

Next, is a full example showing the error messages, if so

extern crate dynparser;
use dynparser::{parse, rules_from_peg};

fn main() {
    let rules = rules_from_peg(
        r#"
main    =   "hello"   " "   "world"
        "#,
    ).map_err(|e| {
        println!("{}", e);
        panic!("FAIL");
    })
        .unwrap();

    println!("{:#?}", rules);

    let result = parse("hello world", &rules);

    assert!(result.is_ok());

    match result {
        Ok(ast) => println!("{:#?}", ast),
        Err(e) => println!("Error: {:?}", e),
    };
}

Next is an example with some and literals

extern crate dynparser;
use dynparser::{parse, rules_from_peg};

   let rules = rules_from_peg(
       r#"

main    =   "hello"   " "   "world"

       "#,
   ).unwrap();

    assert!(parse("hello world", &rules).is_ok());