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

real::compat::re2 — RE2::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 a pointer to std::string, std::string_view, bool or an arithmetic type, or from nullptr to skip the group. A submatch that does not convert fails the whole match call. 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>, 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::re2 — RE2::Arg, the type-erased submatch-parser cell.

As RE2's: a void* destination and a function-pointer parser, so the match functions take a variadic list of output pointers (&i, &s, …) without a virtual call or an allocation.