|
REAL
Regular Expression Algorithmic Library — constexpr C++20 regex
|
Reusable, isolated scratch for one level of lookaround evaluation (dynamic only). More...
#include <pike.hpp>
Classes | |
| struct | ahead_table |
| One unbounded lookahead's answer at every position of one subject: bit i is set when the sub-pattern matches a prefix of the text from i. More... | |
| struct | behind_walk |
| One lookbehind's forward walk over the subject: its threads parked at at, and whether a match of the sub-pattern ends there. More... | |
Public Attributes | |
| thread_list | lists [2] |
| Sub-VM thread lists (pcs only; the sub is capture-free). | |
| std::vector< eps_entry > | stack |
| Sub-VM epsilon-closure stack. | |
| std::vector< behind_walk > | behind |
| Per lookaround index: its lookbehind walk (unused for lookaheads). | |
| std::vector< ahead_table > | ahead |
| Per lookaround index: its unbounded lookahead's table. | |
| std::vector< std::uint8_t > | reach [2] |
The backward pass's rows: pc reaches match from a position. | |
Reusable, isolated scratch for one level of lookaround evaluation (dynamic only).
Vector-backed, reset on each evaluation, never sharing the main basic_pike_state. One level suffices: nested lookaround is rejected at compile time. Absent from the static state, where the lookaround code is if constexpr-elided.