Procs
func eNfa(exp: RpnExp): Enfa {...}{.raises: [RegexError], tags: [].}
- Thompson's construction
func eRemoval(eNfa: Enfa): Nfa {...}{.raises: [], tags: [].}
- Remove e-transitions and return remaining state transtions and submatches, and zero matches. Transitions are added in matching order (BFS), which may help matching performance
func subExps(exp: RpnExp): RpnExp {...}{.raises: [RegexError], tags: [].}
func nfa2(exp: RpnExp): Nfa {...}{.raises: [RegexError], tags: [].}