use resharp::{Regex, RegexOptions};
fn dump(pattern: &str, input: &str) {
let re = Regex::with_options(
pattern,
RegexOptions {
max_dfa_capacity: 65535,
..Default::default()
},
)
.unwrap();
eprintln!("pattern: {}", pattern);
eprintln!("input: {:?} (len={})", input, input.len());
eprintln!("effects:\n{}", re.effects_debug());
let nulls = re.collect_rev_nulls_debug(input.as_bytes());
eprintln!("nulls: {} {:?}", nulls.len(), nulls);
eprintln!("rev_states: {}", re.dfa_stats().1);
eprintln!();
}
fn main() {
dump(r"ab", "xabx");
dump(r"(?<=é)x", "éx");
}