std::__detail Namespace Reference
Numerics » Random Number Generation

## Classes

struct | _BracketMatcher
class | _Compiler
struct | _Default_ranged_hash
struct | _Equal_helper
struct | _Equal_helper< _Key, _Value, _ExtractKey, _Equal, _HashCodeType, false >
struct | _Equal_helper< _Key, _Value, _ExtractKey, _Equal, _HashCodeType, true >
struct | _Equality
struct | _Equality< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false >
struct | _Equality< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true >
struct | _Equality_base
class | _Executor
struct | _Hash_code_base
struct | _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >
struct | _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, true >
struct | _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, false >
struct | _Hash_node
struct | _Hash_node< _Value, false >
struct | _Hash_node< _Value, true >
struct | _Hash_node_base
struct | _Hash_node_value_base
struct | _Hashtable_alloc
struct | _Hashtable_base
struct | _Hashtable_ebo_helper
struct | _Hashtable_ebo_helper< _Nm, _Tp, false >
struct | _Hashtable_ebo_helper< _Nm, _Tp, true >
struct | _Hashtable_traits
struct | _Insert
struct | _Insert< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false >
struct | _Insert< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true >
struct | _Insert_base
struct | _List_node_base
struct | _List_node_header
struct | _Local_const_iterator
struct | _Local_iterator
struct | _Local_iterator_base
struct | _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, true >
struct | _Map_base
struct | _Map_base< _Key, _Pair, _Alloc, _Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false >
struct | _Map_base< _Key, _Pair, _Alloc, _Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true >
struct | _Mask_range_hashing
struct | _Mod_range_hashing
struct | _Node_const_iterator
struct | _Node_iterator
struct | _Node_iterator_base
struct | _Power2_rehash_policy
struct | _Prime_rehash_policy
struct | _Quoted_string
struct | _Rehash_base
struct | _Rehash_base< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, std::false_type >
struct | _Rehash_base< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, std::true_type >
class | _Scanner
class | _StateSeq

## Typedefs

template<typename _Iter , typename _TraitsT >
using | __disable_if_contiguous_normal_iter = typename enable_if< !__is_contiguous_normal_iter< _Iter >::value, std::shared_ptr< const _NFA< _TraitsT > > >::type
template<typename _Iter , typename _TraitsT >
using | __enable_if_contiguous_normal_iter = typename enable_if< __is_contiguous_normal_iter< _Iter >::value, std::shared_ptr< const _NFA< _TraitsT > > >::type
template<typename _Policy >
using | __has_load_factor = typename _Policy::__has_load_factor
template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 , typename _Hash >
using | __hash_code_for_local_iter = _Hash_code_storage< _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, false > >
template<typename _CharT >
using | _Matcher = std::function< bool(_CharT)>
typedef long | _StateIdT

## Enumerations

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 | _RegexExecutorPolicy : int { _S_auto, _S_alternate }

## Functions

template<typename _Tp >
constexpr enable_if_t< __and_< is_integral< _Tp >, is_signed< _Tp > >::value, _Tp > | __abs_integral (_Tp __val)
template<typename _Tp >
constexpr enable_if_t< __and_< is_integral< _Tp >, is_unsigned< _Tp > >::value, _Tp > | __abs_integral (_Tp __val)
void | __abs_integral (bool)=delete
_GLIBCXX14_CONSTEXPR std::size_t | __clp2 (std::size_t __n) noexcept
template<typename _TraitsT , typename _FwdIter >
__enable_if_contiguous_normal_iter< _FwdIter, _TraitsT > | __compile_nfa (_FwdIter __first, _FwdIter __last, const typename _TraitsT::locale_type &__loc, regex_constants::syntax_option_type __flags)
template<typename _TraitsT , typename _FwdIter >
__disable_if_contiguous_normal_iter< _FwdIter, _TraitsT > | __compile_nfa (_FwdIter __first, _FwdIter __last, const typename _TraitsT::locale_type &__loc, regex_constants::syntax_option_type __flags)
template<class _Iterator >
std::iterator_traits< _Iterator >::difference_type | __distance_fw (_Iterator __first, _Iterator __last, std::input_iterator_tag)
template<class _Iterator >
std::iterator_traits< _Iterator >::difference_type | __distance_fw (_Iterator __first, _Iterator __last, std::forward_iterator_tag)
template<class _Iterator >
std::iterator_traits< _Iterator >::difference_type | __distance_fw (_Iterator __first, _Iterator __last)
template<typename _Mn , typename _Nn >
constexpr common_type_t< _Mn, _Nn > | __gcd (_Mn __m, _Nn __n)
template<typename _Mn , typename _Nn >
constexpr common_type_t< _Mn, _Nn > | __lcm (_Mn __m, _Nn __n)
template<typename _InputIterator , typename _OutputIterator , typename _Tp >
_OutputIterator | __normalize (_InputIterator __first, _InputIterator __last, _OutputIterator __result, const _Tp &__factor)
template<typename _BiIter , typename _Alloc , typename _CharT , typename _TraitsT , _RegexExecutorPolicy __policy, bool __match_mode>
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)
template<typename _Tp >
bool | _Power_of_2 (_Tp __x)
template<typename _Value , bool _Cache_hash_code>
bool | operator!= (const _Node_iterator_base< _Value, _Cache_hash_code > &__x, const _Node_iterator_base< _Value, _Cache_hash_code > &__y) noexcept
template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 , typename _Hash , bool __cache>
bool | operator!= (const _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__x, const _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__y)
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 _Value , bool _Cache_hash_code>
bool | operator== (const _Node_iterator_base< _Value, _Cache_hash_code > &__x, const _Node_iterator_base< _Value, _Cache_hash_code > &__y) noexcept
template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 , typename _Hash , bool __cache>
bool | operator== (const _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__x, const _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__y)
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

static const _StateIdT | _S_invalid_state_id

## Detailed Description

Implementation details not part of the namespace std interface.

## Function Documentation

## __lcm()

template<typename _Mn , typename _Nn >

constexpr common_type_t<_Mn, _Nn> std::__detail::__lcm | ( | _Mn | __m,
|  | _Nn | __n
| ) |  |

Least common multiple.

Definition at line 113 of file numeric.

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

_GLIBCXX_RESOLVE_LIB_DEFECTS DR 2344 quoted()'s interaction with padding is unclear

Definition at line 99 of file quoted_string.h.

References std::basic_ostringstream< _CharT, _Traits, _Alloc >::str().

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

_GLIBCXX_RESOLVE_LIB_DEFECTS DR 2344 quoted()'s interaction with padding is unclear

Definition at line 75 of file quoted_string.h.

References std::basic_ostringstream< _CharT, _Traits, _Alloc >::str().

## 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 121 of file quoted_string.h.

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

Referenced by std::mersenne_twister_engine< uint_fast32_t, 32, 624, 397, 31, 0x9908b0dfUL, 11, 0xffffffffUL, 7, 0x9d2c5680UL, 15, 0xefc60000UL, 18, 1812433253UL >::discard(), std::operator!=(), std::subtract_with_carry_engine< _UIntType, __w, __s, __r >::operator()(), std::discard_block_engine< _RandomNumberEngine, __p, __r >::operator()(), std::shuffle_order_engine< _RandomNumberEngine, __k >::operator()(), std::normal_distribution< result_type >::operator()(), and std::linear_congruential_engine< _UIntType, __a, __c, __m >::seed().