REAL
Regular Expression Algorithmic Library — constexpr C++20 regex
Loading...
Searching...
No Matches
inner_literal_reverse.hpp File Reference

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. More...

#include <real/version.hpp>
#include <cstddef>
#include <cstdint>
#include <string_view>
#include <real/automata/lazy_dfa.hpp>
#include <real/frontend/ast.hpp>
#include <real/frontend/compiler.hpp>
#include <real/frontend/inner_literal.hpp>
Include dependency graph for inner_literal_reverse.hpp:

Namespaces

namespace  real
 REAL's public API: real::regex, real::static_regex, real::flags and the match/iterator types built on them.
 
namespace  real::detail
 DFA construction internals: subset construction over a flattened NFA. Not a stable API.
 

Functions

std::size_t real::detail::prefix_reverse_start (const ast &tree, std::int32_t count, flags compile_flags, std::string_view text, std::size_t h, std::size_t min_start)
 The match start for a literal candidate at h: reverse-match the prefix (the first count top-level children) ending at h, bounded below by min_start. Runtime only (the reverse walk is not constexpr).
 

Detailed Description

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.

Unrouted: real::detail::prefix_reverse_start is called only by its test.