Skip to content
Snippets Groups Projects
Commit bc13c0b8 authored by Carlos Valencia's avatar Carlos Valencia
Browse files

simple example main

parent c99710eb
No related branches found
No related tags found
1 merge request!3Change macros format
......@@ -7,7 +7,6 @@ use parser::{Parser};
mod combinators;
use crate::combinators::common::characters::Char;
#[macro_use]
mod preprocessor;
......@@ -21,18 +20,11 @@ infixl 4 <~>
*/
fn main() {
let p1 = Char {c: 'a'};
let p2 = Char {c: 'b'};
let p3 = Char {c: 'c'};
let p4 = Char {c: 'd'};
let p5 = Char {c: 'e'};
let q = Char {c: 'j'};
let p = parser!((p1 *> p2 <|> q) <|> p4 *> p3 <|> p5);
let k = Char {c: 'j'};
let pp = parser!('c' *> k *> 'd');
println!("{:#?}", pp.parse("cjd"));
println!("{:#?}", p.parse("j"));
let p = parser!('h' *> ('e' *> 'l' *> 'l' *> 'o' <|> 'i') *> ' ' *> 'w' *> 'o' *> 'r' *> 'l' *> 'd' *> '!');
println!("{:#?}", p.parse("hello world!"));
println!("{:#?}", p.parse("hi world!"));
println!("{:#?}", p.parse("hey world!"));
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment