REAL
Regular Expression Algorithmic Library — constexpr C++20 regex
Loading...
Searching...
No Matches
real::compat::regex_error Class Reference

std::regex_error-compatible exception; every regex error this layer reports has this type. More...

#include <regex_core.hpp>

Inheritance diagram for real::compat::regex_error:
[legend]
Collaboration diagram for real::compat::regex_error:
[legend]

Public Member Functions

 regex_error (const std::regex_error &error)
 From a std error, keeping its code and message.
 
 regex_error (std::regex_constants::error_type code)
 With a code alone, as std::regex_error(code); the message is std's for that code.
 
 regex_error (std::regex_constants::error_type code, std::string message)
 With an explicit code and message — the strict-policy rejection of a pattern REAL cannot represent linearly (error_complexity), carrying a REAL-identifiable message.
 
const char * what () const noexcept override
 The message, which for a strict-policy rejection identifies REAL as the source.
 

Private Attributes

std::string message_
 The originating error's detailed message.
 

Detailed Description

std::regex_error-compatible exception; every regex error this layer reports has this type.

  • A syntax error: std's own code() and what().
  • A strict-policy rejection (policy) of a pattern std accepts but REAL cannot run linearly: error_complexity, with a message naming REAL.
  • An error the std backend raises while matching (error_complexity, error_stack): std's code.

Constructor & Destructor Documentation

◆ regex_error() [1/3]

real::compat::regex_error::regex_error ( const std::regex_error &  error)
inlineexplicit

From a std error, keeping its code and message.

Parameters
[in]errorThe standard library error to adopt.

◆ regex_error() [2/3]

real::compat::regex_error::regex_error ( std::regex_constants::error_type  code)
inlineexplicit

With a code alone, as std::regex_error(code); the message is std's for that code.

Parameters
[in]codeThe error category.

◆ regex_error() [3/3]

real::compat::regex_error::regex_error ( std::regex_constants::error_type  code,
std::string  message 
)
inline

With an explicit code and message — the strict-policy rejection of a pattern REAL cannot represent linearly (error_complexity), carrying a REAL-identifiable message.

Parameters
[in]codeThe std::regex_constants::error_type to report.
[in]messageThe text what returns.

Member Function Documentation

◆ what()

const char * real::compat::regex_error::what ( ) const
inlineoverridenoexcept

The message, which for a strict-policy rejection identifies REAL as the source.

Returns
A NUL-terminated message valid for this object's lifetime.

The documentation for this class was generated from the following file: