.TH "std::__detail" 3cxx "Tue Jul 2 2019" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::__detail \- Implementation details not part of the namespace std interface\&. .SH SYNOPSIS .br .PP .SS "Classes" .in +1c .ti -1c .RI "struct \fB_BracketMatcher\fP" .br .RI "Matches a character range (bracket expression) " .ti -1c .RI "class \fB_Compiler\fP" .br .RI "Builds an NFA from an input iterator range\&. " .ti -1c .RI "struct \fB_Default_ranged_hash\fP" .br .RI "Default ranged hash function H\&. In principle it should be a function object composed from objects of type H1 and H2 such that h(k, N) = h2(h1(k), N), but that would mean making extra copies of h1 and h2\&. So instead we'll just use a tag to tell class template hashtable to do that composition\&. " .ti -1c .RI "struct \fB_Equal_helper\fP" .br .ti -1c .RI "struct \fB_Equal_helper< _Key, _Value, _ExtractKey, _Equal, _HashCodeType, false >\fP" .br .RI "Specialization\&. " .ti -1c .RI "struct \fB_Equal_helper< _Key, _Value, _ExtractKey, _Equal, _HashCodeType, true >\fP" .br .RI "Specialization\&. " .ti -1c .RI "struct \fB_Equality\fP" .br .ti -1c .RI "struct \fB_Equality< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false >\fP" .br .RI "Specialization\&. " .ti -1c .RI "struct \fB_Equality< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true >\fP" .br .RI "Specialization\&. " .ti -1c .RI "struct \fB_Equality_base\fP" .br .ti -1c .RI "class \fB_Executor\fP" .br .RI "Takes a regex and an input string and does the matching\&. " .ti -1c .RI "struct \fB_Hash_code_base\fP" .br .ti -1c .RI "struct \fB_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >\fP" .br .RI "Specialization: hash function and range-hashing function, no caching of hash codes\&. Provides typedef and accessor required by C++ 11\&. " .ti -1c .RI "struct \fB_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, true >\fP" .br .RI "Specialization: hash function and range-hashing function, caching hash codes\&. H is provided but ignored\&. Provides typedef and accessor required by C++ 11\&. " .ti -1c .RI "struct \fB_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, false >\fP" .br .RI "Specialization: ranged hash function, no caching hash codes\&. H1 and H2 are provided but ignored\&. We define a dummy hash code type\&. " .ti -1c .RI "struct \fB_Hash_node\fP" .br .ti -1c .RI "struct \fB_Hash_node< _Value, false >\fP" .br .ti -1c .RI "struct \fB_Hash_node< _Value, true >\fP" .br .ti -1c .RI "struct \fB_Hash_node_base\fP" .br .ti -1c .RI "struct \fB_Hash_node_value_base\fP" .br .ti -1c .RI "struct \fB_Hashtable_alloc\fP" .br .ti -1c .RI "struct \fB_Hashtable_base\fP" .br .ti -1c .RI "struct \fB_Hashtable_ebo_helper\fP" .br .ti -1c .RI "struct \fB_Hashtable_ebo_helper< _Nm, _Tp, false >\fP" .br .RI "Specialization not using EBO\&. " .ti -1c .RI "struct \fB_Hashtable_ebo_helper< _Nm, _Tp, true >\fP" .br .RI "Specialization using EBO\&. " .ti -1c .RI "struct \fB_Hashtable_traits\fP" .br .ti -1c .RI "struct \fB_Insert\fP" .br .ti -1c .RI "struct \fB_Insert< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false >\fP" .br .RI "Specialization\&. " .ti -1c .RI "struct \fB_Insert< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true >\fP" .br .RI "Specialization\&. " .ti -1c .RI "struct \fB_Insert_base\fP" .br .ti -1c .RI "struct \fB_List_node_base\fP" .br .RI "Common part of a node in the list\&. " .ti -1c .RI "struct \fB_List_node_header\fP" .br .RI "The list node header\&. " .ti -1c .RI "struct \fB_Local_const_iterator\fP" .br .RI "local const_iterators " .ti -1c .RI "struct \fB_Local_iterator\fP" .br .RI "local iterators " .ti -1c .RI "struct \fB_Local_iterator_base\fP" .br .ti -1c .RI "struct \fB_Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, true >\fP" .br .RI "Partial specialization used when nodes contain a cached hash code\&. " .ti -1c .RI "struct \fB_Map_base\fP" .br .ti -1c .RI "struct \fB_Map_base< _Key, _Pair, _Alloc, _Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false >\fP" .br .RI "Partial specialization, __unique_keys set to false\&. " .ti -1c .RI "struct \fB_Map_base< _Key, _Pair, _Alloc, _Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true >\fP" .br .RI "Partial specialization, __unique_keys set to true\&. " .ti -1c .RI "struct \fB_Mask_range_hashing\fP" .br .RI "Range hashing function assuming that second arg is a power of 2\&. " .ti -1c .RI "struct \fB_Mod_range_hashing\fP" .br .RI "Default range hashing function: use division to fold a large number into the range [0, N)\&. " .ti -1c .RI "struct \fB_Node_const_iterator\fP" .br .RI "Node const_iterators, used to iterate through all the hashtable\&. " .ti -1c .RI "struct \fB_Node_iterator\fP" .br .RI "Node iterators, used to iterate through all the hashtable\&. " .ti -1c .RI "struct \fB_Node_iterator_base\fP" .br .RI "Base class for node iterators\&. " .ti -1c .RI "struct \fB_Power2_rehash_policy\fP" .br .RI "Rehash policy providing power of 2 bucket numbers\&. Avoids modulo operations\&. " .ti -1c .RI "struct \fB_Prime_rehash_policy\fP" .br .RI "Default value for rehash policy\&. Bucket size is (usually) the smallest prime that keeps the load factor small enough\&. " .ti -1c .RI "struct \fB_Quoted_string\fP" .br .RI "Struct for delimited strings\&. " .ti -1c .RI "struct \fB_Rehash_base\fP" .br .ti -1c .RI "struct \fB_Rehash_base< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, std::false_type >\fP" .br .RI "Specialization when rehash policy doesn't provide load factor management\&. " .ti -1c .RI "struct \fB_Rehash_base< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, std::true_type >\fP" .br .RI "Specialization when rehash policy provide load factor management\&. " .ti -1c .RI "class \fB_Scanner\fP" .br .RI "Scans an input range for regex tokens\&. " .ti -1c .RI "class \fB_StateSeq\fP" .br .RI "Describes a sequence of one or more _State, its current start and end(s)\&. This structure contains fragments of an NFA during construction\&. " .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "template using \fB__disable_if_contiguous_normal_iter\fP = typename \fBenable_if\fP< !__is_contiguous_normal_iter< _Iter >::value, \fBstd::shared_ptr\fP< const _NFA< _TraitsT > > >::type" .br .ti -1c .RI "template using \fB__enable_if_contiguous_normal_iter\fP = typename \fBenable_if\fP< __is_contiguous_normal_iter< _Iter >::value, \fBstd::shared_ptr\fP< const _NFA< _TraitsT > > >::type" .br .ti -1c .RI "template using \fB__has_load_factor\fP = typename _Policy::__has_load_factor" .br .ti -1c .RI "template using \fB__hash_code_for_local_iter\fP = _Hash_code_storage< \fB_Hash_code_base\fP< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, false > >" .br .ti -1c .RI "template using \fB_Matcher\fP = std::function< bool(_CharT)>" .br .ti -1c .RI "typedef long \fB_StateIdT\fP" .br .in -1c .SS "Enumerations" .in +1c .ti -1c .RI "enum \fB_Opcode\fP : int { \fB_S_opcode_unknown\fP, \fB_S_opcode_alternative\fP, \fB_S_opcode_repeat\fP, \fB_S_opcode_backref\fP, \fB_S_opcode_line_begin_assertion\fP, \fB_S_opcode_line_end_assertion\fP, \fB_S_opcode_word_boundary\fP, \fB_S_opcode_subexpr_lookahead\fP, \fB_S_opcode_subexpr_begin\fP, \fB_S_opcode_subexpr_end\fP, \fB_S_opcode_dummy\fP, \fB_S_opcode_match\fP, \fB_S_opcode_accept\fP } .RI "Operation codes that define the type of transitions within the base NFA that represents the regular expression\&. "" .br .ti -1c .RI "enum \fB_RegexExecutorPolicy\fP : int { \fB_S_auto\fP, \fB_S_alternate\fP }" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "template constexpr \fBenable_if_t\fP< __and_< \fBis_integral\fP< _Tp >, is_signed< _Tp > >::value, _Tp > \fB__abs_integral\fP (_Tp __val)" .br .ti -1c .RI "template constexpr \fBenable_if_t\fP< __and_< \fBis_integral\fP< _Tp >, is_unsigned< _Tp > >::value, _Tp > \fB__abs_integral\fP (_Tp __val)" .br .ti -1c .RI "void \fB__abs_integral\fP (bool)=delete" .br .ti -1c .RI "_GLIBCXX14_CONSTEXPR std::size_t \fB__clp2\fP (std::size_t __n) noexcept" .br .RI "Compute closest power of 2\&. " .ti -1c .RI "template __enable_if_contiguous_normal_iter< _FwdIter, _TraitsT > \fB__compile_nfa\fP (_FwdIter __first, _FwdIter __last, const typename _TraitsT::locale_type &__loc, \fBregex_constants::syntax_option_type\fP __flags)" .br .ti -1c .RI "template __disable_if_contiguous_normal_iter< _FwdIter, _TraitsT > \fB__compile_nfa\fP (_FwdIter __first, _FwdIter __last, const typename _TraitsT::locale_type &__loc, \fBregex_constants::syntax_option_type\fP __flags)" .br .ti -1c .RI "template std::iterator_traits< _Iterator >::difference_type \fB__distance_fw\fP (_Iterator __first, _Iterator __last, \fBstd::input_iterator_tag\fP)" .br .ti -1c .RI "template std::iterator_traits< _Iterator >::difference_type \fB__distance_fw\fP (_Iterator __first, _Iterator __last, \fBstd::forward_iterator_tag\fP)" .br .ti -1c .RI "template std::iterator_traits< _Iterator >::difference_type \fB__distance_fw\fP (_Iterator __first, _Iterator __last)" .br .ti -1c .RI "template constexpr \fBcommon_type_t\fP< _Mn, _Nn > \fB__gcd\fP (_Mn __m, _Nn __n)" .br .ti -1c .RI "template constexpr \fBcommon_type_t\fP< _Mn, _Nn > \fB__lcm\fP (_Mn __m, _Nn __n)" .br .RI "Least common multiple\&. " .ti -1c .RI "template _OutputIterator \fB__normalize\fP (_InputIterator __first, _InputIterator __last, _OutputIterator __result, const _Tp &__factor)" .br .ti -1c .RI "template bool \fB__regex_algo_impl\fP (_BiIter __s, _BiIter __e, \fBmatch_results\fP< _BiIter, _Alloc > &__m, const \fBbasic_regex\fP< _CharT, _TraitsT > &__re, \fBregex_constants::match_flag_type\fP __flags)" .br .ti -1c .RI "template bool \fB_Power_of_2\fP (_Tp __x)" .br .ti -1c .RI "template bool \fBoperator!=\fP (const \fB_Node_iterator_base\fP< _Value, _Cache_hash_code > &__x, const \fB_Node_iterator_base\fP< _Value, _Cache_hash_code > &__y) noexcept" .br .ti -1c .RI "template bool \fBoperator!=\fP (const \fB_Local_iterator_base\fP< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__x, const \fB_Local_iterator_base\fP< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__y)" .br .ti -1c .RI "template \fBstd::basic_ostream\fP< _CharT, _Traits > & \fBoperator<<\fP (\fBstd::basic_ostream\fP< _CharT, _Traits > &__os, const \fB_Quoted_string\fP< _String, _CharT > &__str)" .br .RI "Inserter for quoted strings\&. " .ti -1c .RI "template \fBstd::basic_ostream\fP< _CharT, _Traits > & \fBoperator<<\fP (\fBstd::basic_ostream\fP< _CharT, _Traits > &__os, const \fB_Quoted_string\fP< const _CharT *, _CharT > &__str)" .br .RI "Inserter for quoted strings\&. " .ti -1c .RI "template bool \fBoperator==\fP (const \fB_Node_iterator_base\fP< _Value, _Cache_hash_code > &__x, const \fB_Node_iterator_base\fP< _Value, _Cache_hash_code > &__y) noexcept" .br .ti -1c .RI "template bool \fBoperator==\fP (const \fB_Local_iterator_base\fP< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__x, const \fB_Local_iterator_base\fP< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __cache > &__y)" .br .ti -1c .RI "template \fBstd::basic_istream\fP< _CharT, _Traits > & \fBoperator>>\fP (\fBstd::basic_istream\fP< _CharT, _Traits > &__is, const \fB_Quoted_string\fP< \fBbasic_string\fP< _CharT, _Traits, _Alloc > &, _CharT > &__str)" .br .RI "Extractor for delimited strings\&. The left and right delimiters can be different\&. " .in -1c .SS "Variables" .in +1c .ti -1c .RI "static const _StateIdT \fB_S_invalid_state_id\fP" .br .in -1c .SH "Detailed Description" .PP Implementation details not part of the namespace std interface\&. .SH "Function Documentation" .PP .SS "template constexpr \fBcommon_type_t\fP<_Mn, _Nn> std::__detail::__lcm (_Mn __m, _Nn __n)" .PP Least common multiple\&. .PP Definition at line 113 of file numeric\&. .SS "template \fBstd::basic_ostream\fP<_CharT, _Traits>& std::__detail::operator<< (\fBstd::basic_ostream\fP< _CharT, _Traits > & __os, const \fB_Quoted_string\fP< _String, _CharT > & __str)" .PP Inserter for quoted strings\&. _GLIBCXX_RESOLVE_LIB_DEFECTS DR 2344 quoted()'s interaction with padding is unclear .PP Definition at line 117 of file quoted_string\&.h\&. .PP References std::basic_ostringstream< _CharT, _Traits, _Alloc >::str()\&. .SS "template \fBstd::basic_ostream\fP<_CharT, _Traits>& std::__detail::operator<< (\fBstd::basic_ostream\fP< _CharT, _Traits > & __os, const \fB_Quoted_string\fP< const _CharT *, _CharT > & __str)" .PP Inserter for quoted strings\&. _GLIBCXX_RESOLVE_LIB_DEFECTS DR 2344 quoted()'s interaction with padding is unclear .PP Definition at line 93 of file quoted_string\&.h\&. .PP References std::basic_ostringstream< _CharT, _Traits, _Alloc >::str()\&. .SS "template \fBstd::basic_istream\fP<_CharT, _Traits>& std::__detail::operator>> (\fBstd::basic_istream\fP< _CharT, _Traits > & __is, const \fB_Quoted_string\fP< \fBbasic_string\fP< _CharT, _Traits, _Alloc > &, _CharT > & __str)" .PP Extractor for delimited strings\&. The left and right delimiters can be different\&. .PP Definition at line 139 of file quoted_string\&.h\&. .PP 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()\&. .PP 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()\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.