std::__detail Namespace Reference
Locales

## Classes

struct | _BracketMatcher
class | _Compiler
class | _Executor
struct | _List_node_base
struct | _List_node_header
struct | _Quoted_string
class | _Scanner
class | _StateSeq

## Typedefs

template<typename _Tp, typename _Up>
using | __cmp3way_res_t
template<typename _Tp>
using | __cref
template<typename _Iter>
using | __iter_concept
template<typename _Tp>
using | __iter_diff_t
template<typename _Iter, typename _Tp = _Iter>
using | __iter_traits
template<typename _Tp>
using | __iter_value_t
template<typename _Tp>
using | __range_iter_t
template<typename _Tp>
using | __unsigned_least_t
template<typename _Tp>
using | __with_ref
template<typename _CharT>
using | _Matcher
typedef long | _StateIdT

## Enumerations

enum | _ExecutorFrameOpcode : unsigned char { _S_fopcode_next , _S_fopcode_fallback_next , _S_fopcode_rep_once_more , _S_fopcode_fallback_rep_once_more , _S_fopcode_posix_alternative , _S_fopcode_merge_sol , _S_fopcode_restore_cur_results , _S_fopcode_restore_rep_count , _S_fopcode_decrement_rep_count }
enum | _Opcode : int { _S_opcode_unknown , _S_opcode_alternative , _S_opcode_repeat , _S_opcode_backref , _S_opcode_line_begin_assertion , _S_opcode_line_end_assertion , _S_opcode_word_boundary , _S_opcode_subexpr_lookahead , _S_opcode_subexpr_begin , _S_opcode_subexpr_end , _S_opcode_dummy , _S_opcode_match , _S_opcode_accept }
enum class | _RegexExecutorPolicy : int { _S_auto , _S_alternate }

## Functions

template<typename _Res, typename _Tp>
constexpr _Res | __abs_r (_Tp __val)
template<typename>
void | __abs_r (bool)=delete
template<typename _ChTraits>
constexpr auto | __char_traits_cmp_cat (int __cmp) noexcept
template<typename... _Ts>
constexpr auto | __common_cmp_cat ()
template<typename _Container, typename _UnsafeContainer, typename _Predicate>
constexpr _Container::size_type | __erase_if (_Container &__cont, _UnsafeContainer &__ucont, _Predicate __pred)
template<typename _Container, typename _UnsafeContainer, typename _Predicate>
_Container::size_type | __erase_nodes_if (_Container &__cont, _UnsafeContainer &__ucont, _Predicate __pred)
template<typename _ValT, typename _CharT, typename _Traits>
basic_istream< _CharT, _Traits > & | __extract_params (basic_istream< _CharT, _Traits > &__is, vector< _ValT > &__vals, size_t __n)
template<bool _DecOnly, typename _Tp>
constexpr bool | __from_chars_alnum (const char *&__first, const char *__last, _Tp &__val, int __base)
template<bool _DecOnly = false>
constexpr unsigned char | __from_chars_alnum_to_val (unsigned char __c)
template<bool _DecOnly, typename _Tp>
constexpr bool | __from_chars_pow2_base (const char *&__first, const char *__last, _Tp &__val, int __base)
template<typename _Tp>
constexpr _Tp | __gcd (_Tp __m, _Tp __n)
template<typename _Tp>
_Tp * | __get_temporary_buffer (ptrdiff_t __len) noexcept
template<typename _Tp>
constexpr bool | __p1_representable_as_double (_Tp __x) noexcept
template<typename _Tp>
constexpr bool | __raise_and_add (_Tp &__val, int __base, unsigned char __c)
template<typename _BiIter, typename _Alloc, typename _CharT, typename _TraitsT>
bool | __regex_algo_impl (_BiIter __s, _BiIter __e, match_results< _BiIter, _Alloc > &__m, const basic_regex< _CharT, _TraitsT > &__re, regex_constants::match_flag_type __flags, _RegexExecutorPolicy __policy, bool __match_mode)
template<typename _Tp>
constexpr bool | __representable_as_double (_Tp __x) noexcept
template<typename _Tp>
void | __return_temporary_buffer (_Tp *__p, size_t __len)
template<typename _Tp>
constexpr to_chars_result | __to_chars (char *__first, char *__last, _Tp __val, int __base) noexcept
template<typename _Tp>
constexpr to_chars_result | __to_chars_10 (char *__first, char *__last, _Tp __val) noexcept
template<typename _Tp>
constexpr void | __to_chars_10_impl (char *__first, unsigned __len, _Tp __val) noexcept
template<typename _Tp>
constexpr to_chars_result | __to_chars_16 (char *__first, char *__last, _Tp __val) noexcept
template<typename _Tp>
constexpr to_chars_result | __to_chars_2 (char *__first, char *__last, _Tp __val) noexcept
template<typename _Tp>
constexpr to_chars_result | __to_chars_8 (char *__first, char *__last, _Tp __val) noexcept
template<typename _Tp>
constexpr unsigned | __to_chars_len (_Tp __value, int __base) noexcept
template<typename _Tp>
constexpr unsigned | __to_chars_len_2 (_Tp __value) noexcept
template<typename _CharT, typename _Traits, typename _String>
std::basic_ostream< _CharT, _Traits > & | operator<< (std::basic_ostream< _CharT, _Traits > &__os, const _Quoted_string< _String, _CharT > &__str)
template<typename _CharT, typename _Traits>
std::basic_ostream< _CharT, _Traits > & | operator<< (std::basic_ostream< _CharT, _Traits > &__os, const _Quoted_string< const _CharT *, _CharT > &__str)
template<typename _CharT, typename _Traits, typename _Alloc>
std::basic_istream< _CharT, _Traits > & | operator>> (std::basic_istream< _CharT, _Traits > &__is, const _Quoted_string< basic_string< _CharT, _Traits, _Alloc > &, _CharT > &__str)

## Variables

template<typename _Tp>
constexpr unsigned | __cmp_cat_id
template<>
constexpr unsigned | __cmp_cat_id< partial_ordering >
template<>
constexpr unsigned | __cmp_cat_id< strong_ordering >
template<>
constexpr unsigned | __cmp_cat_id< weak_ordering >
template<typename _Tp>
constexpr bool | __destructible
template<typename _Tp>
constexpr bool | __destructible< _Tp & >
template<typename _Tp>
constexpr bool | __destructible< _Tp && >
template<typename _Tp, size_t _Nm>
constexpr bool | __destructible< _Tp[_Nm]>
template<typename _Tp>
constexpr bool | __destructible_impl
template<typename _Tp>
constexpr bool | __destructible_impl< _Tp >
template<typename _Tp>
constexpr bool | __is_ref_wrapper
template<typename _Tp>
constexpr bool | __is_ref_wrapper< reference_wrapper< _Tp > >
constexpr _StateIdT | _S_invalid_state_id

## Detailed Description

Implementation details not part of the namespace std interface.

## Typedef Documentation

## __cmp3way_res_t

template<typename _Tp, typename _Up>

using std::__detail::__cmp3way_res_t

Definition at line 519 of file compare.

## __cref

template<typename _Tp>

using std::__detail::__cref

Definition at line 123 of file concepts.

## __iter_concept

template<typename _Iter>

using std::__detail::__iter_concept

Definition at line 541 of file iterator_concepts.h.

## __iter_diff_t

template<typename _Tp>

using std::__detail::__iter_diff_t

Definition at line 236 of file iterator_concepts.h.

## __iter_traits

template<typename _Iter, typename _Tp = _Iter>

using std::__detail::__iter_traits

Definition at line 233 of file iterator_concepts.h.

## __iter_value_t

template<typename _Tp>

using std::__detail::__iter_value_t

Definition at line 307 of file iterator_concepts.h.

## __range_iter_t

template<typename _Tp>

using std::__detail::__range_iter_t

Definition at line 1023 of file iterator_concepts.h.

## __unsigned_least_t

template<typename _Tp>

using std::__detail::__unsigned_least_t

Definition at line 111 of file charconv.

## __with_ref

template<typename _Tp>

using std::__detail::__with_ref

Definition at line 85 of file iterator_concepts.h.

## Enumeration Type Documentation

## _ExecutorFrameOpcode

enum std::__detail::_ExecutorFrameOpcode : unsigned char

Definition at line 57 of file regex_executor.tcc.

## _RegexExecutorPolicy

enum class std::__detail::_RegexExecutorPolicy : int

strong

Definition at line 52 of file regex.h.

## Function Documentation

## __abs_r()

template<typename _Res, typename _Tp>

_Res std::__detail::__abs_r | ( | _Tp | __val | ) |

constexpr

Definition at line 122 of file numeric.

## __char_traits_cmp_cat()

template<typename _ChTraits>

auto std::__detail::__char_traits_cmp_cat | ( | int | __cmp | ) |

constexpr noexcept

Definition at line 998 of file char_traits.h.

## __common_cmp_cat()

template<typename... _Ts>

auto std::__detail::__common_cmp_cat | ( |  | ) |

constexpr

Definition at line 428 of file compare.

## __erase_if()

template<typename _Container, typename _UnsafeContainer, typename _Predicate>

_Container::size_type std::__detail::__erase_if | ( | _Container & | __cont,
|  | _UnsafeContainer & | __ucont,
|  | _Predicate | __pred )

constexpr

Definition at line 52 of file erase_if.h.

## __erase_nodes_if()

template<typename _Container, typename _UnsafeContainer, typename _Predicate>

_Container::size_type std::__detail::__erase_nodes_if | ( | _Container & | __cont,
|  | _UnsafeContainer & | __ucont,
|  | _Predicate | __pred )

Definition at line 72 of file erase_if.h.

## __extract_params()

template<typename _ValT, typename _CharT, typename _Traits>

basic_istream< _CharT, _Traits > & std::__detail::__extract_params | ( | basic_istream< _CharT, _Traits > & | __is,
|  | vector< _ValT > & | __vals,
|  | size_t | __n )

Definition at line 2904 of file bits/random.tcc.

## __from_chars_alnum()

template<bool _DecOnly, typename _Tp>

bool std::__detail::__from_chars_alnum | ( | const char *& | __first,
|  | const char * | __last,
|  | _Tp & | __val,
|  | int | __base )

constexpr

std::from_chars implementation for integers in any base. If _DecOnly is true, then we may assume __base is at most 10.

Definition at line 527 of file charconv.

Referenced by std::from_chars().

## __from_chars_alnum_to_val()

template<bool _DecOnly = false>

unsigned char std::__detail::__from_chars_alnum_to_val | ( | unsigned char | __c | ) |

constexpr

Definition at line 458 of file charconv.

## __from_chars_pow2_base()

template<bool _DecOnly, typename _Tp>

bool std::__detail::__from_chars_pow2_base | ( | const char *& | __first,
|  | const char * | __last,
|  | _Tp & | __val,
|  | int | __base )

constexpr

std::from_chars implementation for integers in a power-of-two base. If _DecOnly is true, then we may assume __base is at most 8.

Definition at line 470 of file charconv.

Referenced by std::from_chars().

## __gcd()

template<typename _Tp>

_Tp std::__detail::__gcd | ( | _Tp | __m,
|  | _Tp | __n )

constexpr

Definition at line 141 of file numeric.

## __get_temporary_buffer()

template<typename _Tp>

_Tp * std::__detail::__get_temporary_buffer | ( | ptrdiff_t | __len | ) |

inline noexcept

Definition at line 83 of file stl_tempbuf.h.

## __p1_representable_as_double()

template<typename _Tp>

bool std::__detail::__p1_representable_as_double | ( | _Tp | __x | ) |

constexpr noexcept

Definition at line 834 of file bits/random.tcc.

## __raise_and_add()

template<typename _Tp>

bool std::__detail::__raise_and_add | ( | _Tp & | __val,
|  | int | __base,
|  | unsigned char | __c )

constexpr

Definition at line 407 of file charconv.

## __representable_as_double()

template<typename _Tp>

bool std::__detail::__representable_as_double | ( | _Tp | __x | ) |

constexpr noexcept

Definition at line 821 of file bits/random.tcc.

## __return_temporary_buffer()

template<typename _Tp>

void std::__detail::__return_temporary_buffer | ( | _Tp * | __p,
|  | size_t | __len )

inline

Definition at line 101 of file stl_tempbuf.h.

## __to_chars()

template<typename _Tp>

to_chars_result std::__detail::__to_chars | ( | char * | __first,
|  | char * | __last,
|  | _Tp | __val,
|  | int | __base )

constexpr noexcept

Definition at line 127 of file charconv.

## __to_chars_10()

template<typename _Tp>

to_chars_result std::__detail::__to_chars_10 | ( | char * | __first,
|  | char * | __last,
|  | _Tp | __val )

constexpr noexcept

Definition at line 213 of file charconv.

## __to_chars_10_impl()

template<typename _Tp>

void std::__detail::__to_chars_10_impl | ( | char * | __first,
|  | unsigned | __len,
|  | _Tp | __val )

constexpr noexcept

Definition at line 83 of file charconv.h.

## __to_chars_16()

template<typename _Tp>

to_chars_result std::__detail::__to_chars_16 | ( | char * | __first,
|  | char * | __last,
|  | _Tp | __val )

constexpr noexcept

Definition at line 167 of file charconv.

## __to_chars_2()

template<typename _Tp>

to_chars_result std::__detail::__to_chars_2 | ( | char * | __first,
|  | char * | __last,
|  | _Tp | __val )

constexpr noexcept

Definition at line 289 of file charconv.

## __to_chars_8()

template<typename _Tp>

to_chars_result std::__detail::__to_chars_8 | ( | char * | __first,
|  | char * | __last,
|  | _Tp | __val )

constexpr noexcept

Definition at line 236 of file charconv.

## __to_chars_len()

template<typename _Tp>

unsigned std::__detail::__to_chars_len | ( | _Tp | __value,
|  | int | __base = 10 )

constexpr noexcept

Definition at line 57 of file charconv.h.

## __to_chars_len_2()

template<typename _Tp>

unsigned std::__detail::__to_chars_len_2 | ( | _Tp | __value | ) |

constexpr noexcept

Definition at line 121 of file charconv.

## operator<<() [1/2]

template<typename _CharT, typename _Traits, typename _String>

std::basic_ostream< _CharT, _Traits > & std::__detail::operator<< | ( | std::basic_ostream< _CharT, _Traits > & | __os,
|  | const _Quoted_string< _String, _CharT > & | __str )

Inserter for quoted strings.

Definition at line 1 of file quoted_string.h.

## operator<<() [2/2]

template<typename _CharT, typename _Traits>

std::basic_ostream< _CharT, _Traits > & std::__detail::operator<< | ( | std::basic_ostream< _CharT, _Traits > & | __os,
|  | const _Quoted_string< const _CharT *, _CharT > & | __str )

Inserter for quoted strings.

Definition at line 1 of file quoted_string.h.

## operator>>()

template<typename _CharT, typename _Traits, typename _Alloc>

std::basic_istream< _CharT, _Traits > & std::__detail::operator>> | ( | std::basic_istream< _CharT, _Traits > & | __is,
|  | const _Quoted_string< basic_string< _CharT, _Traits, _Alloc > &, _CharT > & | __str )

Extractor for delimited strings. The left and right delimiters can be different.

Definition at line 168 of file quoted_string.h.

References std::basic_ios< _CharT, _Traits >::clear(), std::ios_base::flags(), std::ios_base::fmtflags, std::basic_ios< _CharT, _Traits >::good(), std::ios_base::setf(), std::ios_base::skipws, and std::basic_istream< _CharT, _Traits >::unget().

## Variable Documentation

## __cmp_cat_id

template<typename _Tp>

unsigned std::__detail::__cmp_cat_id

inline constexpr

Definition at line 419 of file compare.

## __cmp_cat_id< partial_ordering >

template<>

unsigned std::__detail::__cmp_cat_id< partial_ordering >

inline constexpr

Definition at line 421 of file compare.

## __cmp_cat_id< strong_ordering >

template<>

unsigned std::__detail::__cmp_cat_id< strong_ordering >

inline constexpr

Definition at line 425 of file compare.

## __cmp_cat_id< weak_ordering >

template<>

unsigned std::__detail::__cmp_cat_id< weak_ordering >

inline constexpr

Definition at line 423 of file compare.

## __destructible

template<typename _Tp>

bool std::__detail::__destructible

constexpr

Definition at line 136 of file concepts.

## __destructible< _Tp & >

template<typename _Tp>

bool std::__detail::__destructible< _Tp & >

constexpr

Definition at line 138 of file concepts.

## __destructible< _Tp && >

template<typename _Tp>

bool std::__detail::__destructible< _Tp && >

constexpr

Definition at line 140 of file concepts.

## __destructible< _Tp[_Nm]>

template<typename _Tp, size_t _Nm>

bool std::__detail::__destructible< _Tp[_Nm]>

constexpr

Definition at line 142 of file concepts.

## __destructible_impl

template<typename _Tp>

bool std::__detail::__destructible_impl

constexpr

Definition at line 130 of file concepts.

## __destructible_impl< _Tp >

template<typename _Tp>

bool std::__detail::__destructible_impl< _Tp >

constexpr

Definition at line 133 of file concepts.

## __is_ref_wrapper

template<typename _Tp>

bool std::__detail::__is_ref_wrapper

constexpr

Definition at line 464 of file refwrap.h.

## __is_ref_wrapper< reference_wrapper< _Tp > >

template<typename _Tp>

bool std::__detail::__is_ref_wrapper< reference_wrapper< _Tp > >

constexpr

Definition at line 467 of file refwrap.h.