1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#[macro_use]
pub mod macros;

pub mod bo_char;
pub mod bo_common;
pub mod bo_imports;
pub mod bo_part;
pub mod parser;
pub mod std_types;
pub mod tuple;
pub mod util;

#[cfg(test)]
mod tests {
    use super::*;
    use crate::parser::*;
    use bogobble::*;

    ss_parser! { Catter: BackTo ,
        (Put("__"),ss("Hello"),Put("__"))
    }

    ss_parser! { Car:BackTo ,
        (sskip("* ".istar()),Put("("),ss("abcdr".istar()),sskip("* ".istar()),Put(")"))
    }

    #[test]
    fn it_works() {
        assert_eq!(Catter.ss_convert("Hello", &()).unwrap(), "__Hello__");
        assert_eq!(Car.ss_convert("*  * car*  * ", &()).unwrap(), "(car)");
    }
}