Text.Regex.TDFA.TDFA converts the QNFA from TNFA into the DFA. A DFA state corresponds to a Set of QNFA states, repesented as list of Index which are used to lookup the DFA state in a lazy Trie which holds all possible subsets of QNFA states.
- patternToDFA :: CompOption -> (Pattern, (GroupIndex, DoPa)) -> (DFA, Index, Array Tag OP, Array GroupIndex [GroupInfo])
- data DFA = DFA {}
- data DT
- examineDFA :: (DFA, Index, Array Tag OP, Array GroupIndex [GroupInfo]) -> String
- isDFAFrontAnchored :: DFA -> Bool
- nfaToDFA :: ((Index, Array Index QNFA), Array Tag OP, Array GroupIndex [GroupInfo]) -> (DFA, Index, Array Tag OP, Array GroupIndex [GroupInfo])
- dfaMap :: DFA -> Map SetIndex DFA
Documentation
patternToDFA :: CompOption -> (Pattern, (GroupIndex, DoPa)) -> (DFA, Index, Array Tag OP, Array GroupIndex [GroupInfo])Source
Internal DFA node, identified by the Set of indices of the QNFA nodes it represents.
isDFAFrontAnchored :: DFA -> BoolSource