|
REAL
Regular Expression Algorithmic Library — constexpr C++20 regex
|
A byte-level program derived from a Pike program for the DFA passes: every klass_cp construct is expanded into UTF-8 byte-range split/klass chains, so the whole thing is byte-transition-only and a forward DFA can represent it. The Pike program itself is untouched (byte-identity); this is a private recognition view the DFAs own. eligible is false when an op no DFA can represent (a position assertion or a lookaround) is present — the caller then keeps the Pike VM.
More...
#include <lazy_dfa.hpp>
Public Attributes | |
| std::vector< instr > | code |
| std::vector< char_class > | classes |
| bool | eligible {true} |
| Representable by the byte DFAs / Tier-A one-pass. | |
| bool | has_assertions {false} |
A Tier-B build kept assert_position ops (else stripped/declined). | |
| bool | unicode_word {false} |
Program default word-ness for \b \B \< \> (Tier-B edge conditions). | |
A byte-level program derived from a Pike program for the DFA passes: every klass_cp construct is expanded into UTF-8 byte-range split/klass chains, so the whole thing is byte-transition-only and a forward DFA can represent it. The Pike program itself is untouched (byte-identity); this is a private recognition view the DFAs own. eligible is false when an op no DFA can represent (a position assertion or a lookaround) is present — the caller then keeps the Pike VM.
Definition at line 71 of file lazy_dfa.hpp.
| std::vector<char_class> real::detail::byte_program::classes |
Definition at line 74 of file lazy_dfa.hpp.
| std::vector<instr> real::detail::byte_program::code |
Definition at line 73 of file lazy_dfa.hpp.
| bool real::detail::byte_program::eligible {true} |
Representable by the byte DFAs / Tier-A one-pass.
Definition at line 75 of file lazy_dfa.hpp.
| bool real::detail::byte_program::has_assertions {false} |
A Tier-B build kept assert_position ops (else stripped/declined).
Definition at line 76 of file lazy_dfa.hpp.
| bool real::detail::byte_program::unicode_word {false} |
Program default word-ness for \b \B \< \> (Tier-B edge conditions).
Definition at line 77 of file lazy_dfa.hpp.