|
REAL
Regular Expression Algorithmic Library — constexpr C++20 regex
|
Files | |
| ast.hpp | |
| Pattern text → AST, via a constexpr recursive-descent parser. | |
| compiler.hpp | |
| AST → NFA program, via Thompson construction. | |
| inner_literal.hpp | |
Extracts a required inner literal from a pattern's AST — the substring that every match must contain ((\w+)@(\w+) -> @, key=(\w+) -> key=, \d{4}-\d{2} -> -). It is the memmem candidate an inner-literal prefilter scans for: find the literal, then confirm the surrounding pattern from that candidate. A pure function over the node pool: compiler.hpp records the result in pattern_hints, and pike_vm::run dispatches to run_inner_literal on it. | |
| inner_literal_reverse.hpp | |
Recovers an inner-literal candidate's match start by reverse-matching the pattern's prefix (everything before the literal) with build_byte_program() + reverse_dfa. | |