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}; ...@@ -7,7 +7,6 @@ use parser::{Parser};
mod combinators; mod combinators;
use crate::combinators::common::characters::Char;
#[macro_use] #[macro_use]
mod preprocessor; mod preprocessor;
...@@ -21,18 +20,11 @@ infixl 4 <~> ...@@ -21,18 +20,11 @@ infixl 4 <~>
*/ */
fn main() { fn main() {
let p1 = Char {c: 'a'};
let p2 = Char {c: 'b'}; let p = parser!('h' *> ('e' *> 'l' *> 'l' *> 'o' <|> 'i') *> ' ' *> 'w' *> 'o' *> 'r' *> 'l' *> 'd' *> '!');
let p3 = Char {c: 'c'};
let p4 = Char {c: 'd'}; println!("{:#?}", p.parse("hello world!"));
let p5 = Char {c: 'e'}; println!("{:#?}", p.parse("hi world!"));
let q = Char {c: 'j'}; println!("{:#?}", p.parse("hey world!"));
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"));
} }
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