diff --git a/src/main.rs b/src/main.rs --- a/src/main.rs +++ b/src/main.rs @@ -1,11 +1,11 @@ use std::env; -use regexp::Regexp; +use regexp::RegexpNFA; fn test() { let tests = ["", "a", "ab", "aabb", "abab", "abcd", "abcbcdbcd"]; for pattern in ["a(b|c)", "a*b*", "(ab)*", "a((bc)*d)*", "(a|b)*a(a|b)(a|b)(a|b)", "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"] { println!("# {pattern}"); - let r = match Regexp::new(&pattern.to_string()) { + let r = match RegexpNFA::new(&pattern.to_string()) { Ok(r1) => r1.determinize().reduce().normalize(), Err(e) => { println!("{e}"); @@ -24,7 +24,7 @@ fn main() { match args[1].as_str() { "test" => test(), "match" => { - let r = match Regexp::new(&args[2].to_string()) { + let r = match RegexpNFA::new(&args[2].to_string()) { Ok(r1) => r1.determinize().reduce().normalize(), Err(e) => { panic!("ERROR: {e}"); @@ -33,13 +33,13 @@ fn main() { println!("{}", r.eval(args[3].to_string())); }, "compare" => { - let r1 = match Regexp::new(&args[2].to_string()) { + let r1 = match RegexpNFA::new(&args[2].to_string()) { Ok(r) => r.determinize().reduce().normalize(), Err(e) => { panic!("ERROR: {e}"); } }; - let r2 = match Regexp::new(&args[3].to_string()) { + let r2 = match RegexpNFA::new(&args[3].to_string()) { Ok(r) => r.determinize().reduce().normalize(), Err(e) => { panic!("ERROR: {e}"); @@ -48,7 +48,7 @@ fn main() { println!("{}", r1.find_distinguishing_string(&r2).unwrap_or("None".to_string())); }, s => { - println!("An unknown command: \"{s}\". Use \"match\" or \"test\".") + println!("An unknown command: \"{s}\". Use \"match\", \"compare\" or \"test\".") } } }