aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
blob: bcc0f01ecf9bc95acbe7fcc6b3f5ee6f28967892 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
mod nfa;
mod regex;
use nfa::*;
use regex::*;

fn test(regex: &str, input: &str) -> bool {
    let token = Regex::new(String::from(regex));
    dbg!(&token);
    let mut nfa = NFA::new();
    nfa.regex_to_nfa(token);
    let mut x: Vec<(&usize, &State)> = nfa.states.iter().map(|(k, v)| (k, v)).collect();
    x.sort();
    dbg!(x);
    // nfa.match_re(String::from(input))
    true
}

fn main() {
    // println!("{}", test("a.b..", "a.bxb"));
    println!("{}", test(".*b", "aaaaaabbb"))
}