From 5647a7645739fa2aa2dea4fe059b4efe84a278bc Mon Sep 17 00:00:00 2001 From: Jonas Maier Date: Tue, 2 Jun 2026 21:31:50 +0200 Subject: seems to work --- src/parse/regex/dfa.rs | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'src/parse/regex/dfa.rs') diff --git a/src/parse/regex/dfa.rs b/src/parse/regex/dfa.rs index 78888a2..243176d 100644 --- a/src/parse/regex/dfa.rs +++ b/src/parse/regex/dfa.rs @@ -3,7 +3,7 @@ use std::collections::HashMap; use super::{ byte_range::ByteRange, - enfa::{ENFA, Epsilon, MultiState, Resolved}, + enfa::{ENFA, MultiState}, }; pub type StateId = usize; @@ -60,10 +60,12 @@ impl DFA { } } -impl From> for DFA { - fn from(mut nfa: ENFA) -> Self { +impl From for DFA { + fn from(mut nfa: ENFA) -> Self { nfa.remove_unreachable(); + println!("{nfa:?}"); + let mut multi_states = nfa.all_multi_states(); multi_states.insert(nfa.void_multi_state()); let mut len = 0; @@ -101,9 +103,3 @@ impl From> for DFA { } } } - -impl From> for DFA { - fn from(value: ENFA) -> Self { - Self::from(value.resolve_epsilon()) - } -} -- cgit v1.2.3