.TH "std::__detail" 3cxx "Sun Feb 7 2021" "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_iter\fP = __enable_if_t< !__is_contiguous_iter< _Iter >::value, \fBstd::shared_ptr\fP< const _NFA< _TraitsT > > >" .br .ti -1c .RI "template using \fB__enable_if_contiguous_iter\fP = __enable_if_t< __is_contiguous_iter< _Iter >::value, \fBstd::shared_ptr\fP< const _NFA< _TraitsT > > >" .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 }" .br .RI "Operation codes that define the type of transitions within the base NFA that represents the regular expression\&. " .ti -1c .RI "enum class \fB_RegexExecutorPolicy\fP : int { \fB_S_auto\fP, \fB_S_alternate\fP }" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "template constexpr _Up \fB__absu\fP (_Tp __val)" .br .ti -1c .RI "template void \fB__absu\fP (bool)=delete" .br .ti -1c .RI "std::size_t \fB__clp2\fP (std::size_t __n) noexcept" .br .RI "Compute closest power of 2 not less than __n\&. " .ti -1c .RI "template __enable_if_contiguous_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_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)" .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, \fBstd::input_iterator_tag\fP)" .br .ti -1c .RI "template _Container::size_type \fB__erase_nodes_if\fP (_Container &__cont, _Predicate __pred)" .br .ti -1c .RI "template \fBbasic_istream\fP< _CharT, _Traits > & \fB__extract_params\fP (\fBbasic_istream\fP< _CharT, _Traits > &__is, \fBvector\fP< _ValT > &__vals, size_t __n)" .br .ti -1c .RI "template constexpr _Tp \fB__gcd\fP (_Tp __m, _Tp __n)" .br .ti -1c .RI "template constexpr _Tp \fB__lcm\fP (_Tp __m, _Tp __n)" .br .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_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 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 \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_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 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 \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 \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 1 of file quoted_string\&.h\&. .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 1 of file quoted_string\&.h\&. .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::ios_base::skipws, and std::basic_istream< _CharT, _Traits >::unget()\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.