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

real::compat::re2RE2::Arg, the type-erased submatch-parser cell. More...

#include <real/version.hpp>
#include <cerrno>
#include <charconv>
#include <cstdlib>
#include <string>
#include <string_view>
#include <type_traits>
Include dependency graph for arg.hpp:

Classes

class  real::compat::re2::Arg
 A type-erased destination for one captured submatch, built implicitly from T*. More...
 

Namespaces

namespace  real
 REAL's public API: real::regex, real::static_regex, real::flags and the match/iterator types built on them.
 
namespace  real::compat
 Drop-in replacements for <regex>: basic_regex, regex_search / regex_match / regex_replace and the iterator types – backed by REAL's linear-time engine where it can serve the pattern, and by std::regex otherwise, never by a silent divergence.
 
namespace  real::compat::re2
 Drop-in replacement for RE2's API surface, on REAL's engine.
 

Detailed Description

real::compat::re2RE2::Arg, the type-erased submatch-parser cell.

Mirrors real RE2's own mechanism (re2.h, class RE2::Arg): a void* destination plus a function-pointer parser, so FullMatch/PartialMatch/Consume/FindAndConsume can accept a heterogeneous, variadic list of output pointers (&i, &s, &d, …) without a virtual call or an any-style allocation.