Provided by: libstdc++-10-doc_10.5.0-4ubuntu2_all bug

NAME

       std::__detail - Implementation details not part of the namespace std interface.

SYNOPSIS

   Classes
       struct _BracketMatcher
           Matches a character range (bracket expression)
       class _Compiler
           Builds an NFA from an input iterator range.
       struct _Default_ranged_hash
           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.
       struct _Equality
       struct _Equality< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits,
           false >
           unordered_multiset and unordered_multimap specializations.
       struct _Equality< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits,
           true >
           unordered_map and unordered_set specializations.
       class _Executor
           Takes a regex and an input string and does the matching.
       struct _Hash_code_base
       struct _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >
           Specialization: hash function and range-hashing function, no caching of hash codes. Provides typedef
           and accessor required by C++ 11.
       struct _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, true >
           Specialization: hash function and range-hashing function, caching hash codes. H is provided but
           ignored. Provides typedef and accessor required by C++ 11.
       struct _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, false >
           Specialization: ranged hash function, no caching hash codes. H1 and H2 are provided but ignored. We
           define a dummy hash code type.
       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 >
           Specialization not using EBO.
       struct _Hashtable_ebo_helper< _Nm, _Tp, true >
           Specialization using EBO.
       struct _Hashtable_traits
       struct _Insert
       struct _Insert< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false
           >
           Specialization.
       struct _Insert< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true
           >
           Specialization.
       struct _Insert_base
       struct _List_node_base
           Common part of a node in the list.
       struct _List_node_header
           The list node header.
       struct _Local_const_iterator
           local const_iterators
       struct _Local_iterator
           local iterators
       struct _Local_iterator_base
       struct _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, true >
           Partial specialization used when nodes contain a cached hash code.
       struct _Map_base
       struct _Map_base< _Key, _Pair, _Alloc, _Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, false
           >
           Partial specialization, __unique_keys set to false.
       struct _Map_base< _Key, _Pair, _Alloc, _Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true
           >
           Partial specialization, __unique_keys set to true.
       struct _Mask_range_hashing
           Range hashing function assuming that second arg is a power of 2.
       struct _Mod_range_hashing
           Default range hashing function: use division to fold a large number into the range [0, N).
       struct _Node_const_iterator
           Node const_iterators, used to iterate through all the hashtable.
       struct _Node_iterator
           Node iterators, used to iterate through all the hashtable.
       struct _Node_iterator_base
           Base class for node iterators.
       struct _Power2_rehash_policy
           Rehash policy providing power of 2 bucket numbers. Avoids modulo operations.
       struct _Prime_rehash_policy
           Default value for rehash policy. Bucket size is (usually) the smallest prime that keeps the load
           factor small enough.
       struct _Quoted_string
           Struct for delimited strings.
       struct _Rehash_base
       struct _Rehash_base< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits,
           false_type >
           Specialization when rehash policy doesn't provide load factor management.
       struct _Rehash_base< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits,
           true_type >
           Specialization when rehash policy provide load factor management.
       class _Scanner
           Scans an input range for regex tokens.
       class _StateSeq
           Describes a sequence of one or more _State, its current start and end(s). This structure contains
           fragments of an NFA during construction.

   Typedefs
       template<typename _Iter , typename _TraitsT > using __disable_if_contiguous_iter = __enable_if_t<
           !__is_contiguous_iter< _Iter >::value, std::shared_ptr< const _NFA< _TraitsT > > >
       template<typename _Iter , typename _TraitsT > using __enable_if_contiguous_iter = __enable_if_t<
           __is_contiguous_iter< _Iter >::value, std::shared_ptr< const _NFA< _TraitsT > > >
       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 _Tp > using __integer_from_chars_result_type = enable_if_t< __or_< __is_signed_integer<
           _Tp >, __is_unsigned_integer< _Tp >, is_same< char, remove_cv_t< _Tp > > >::value, from_chars_result
           >
       template<typename _Tp > using __integer_to_chars_result_type = enable_if_t< __or_< __is_signed_integer<
           _Tp >, __is_unsigned_integer< _Tp >, is_same< char, remove_cv_t< _Tp > > >::value, to_chars_result >
       template<typename _Tp > using __unsigned_least_t = typename __to_chars_unsigned_type< _Tp >::type
       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 }
           Operation codes that define the type of transitions within the base NFA that represents the regular
           expression.
       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
       std::size_t __clp2 (std::size_t __n) noexcept
           Compute closest power of 2 not less than __n.
       template<typename _TraitsT , typename _FwdIter > __enable_if_contiguous_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_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)
       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, std::input_iterator_tag)
       template<typename _Container , typename _Predicate > _Container::size_type __erase_nodes_if (_Container
           &__cont, _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<typename _Tp > bool __from_chars_alnum (const char *&__first, const char *__last, _Tp &__val,
           int __base)
           std::from_chars implementation for integers in bases 11 to 36.
       constexpr char __from_chars_alpha_to_num (char __c)
       template<typename _Tp > bool __from_chars_binary (const char *&__first, const char *__last, _Tp &__val)
           std::from_chars implementation for integers in base 2.
       template<typename _Tp > bool __from_chars_digit (const char *&__first, const char *__last, _Tp &__val,
           int __base)
           std::from_chars implementation for integers in bases 3 to 10.
       template<typename _Tp > constexpr _Tp __gcd (_Tp __m, _Tp __n)
       template<typename _InputIterator , typename _OutputIterator , typename _Tp > _OutputIterator __normalize
           (_InputIterator __first, _InputIterator __last, _OutputIterator __result, const _Tp &__factor)
       template<typename _Tp > bool __raise_and_add (_Tp &__val, int __base, unsigned char __c)
       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 > void __return_temporary_buffer (_Tp *__p, size_t __len)
       template<typename _Tp > to_chars_result __to_chars (char *__first, char *__last, _Tp __val, int __base)
           noexcept
       template<typename _Tp > __integer_to_chars_result_type< _Tp > __to_chars_10 (char *__first, char *__last,
           _Tp __val) noexcept
       template<typename _Tp > void __to_chars_10_impl (char *__first, unsigned __len, _Tp __val) noexcept
       template<typename _Tp > __integer_to_chars_result_type< _Tp > __to_chars_16 (char *__first, char *__last,
           _Tp __val) noexcept
       template<typename _Tp > __integer_to_chars_result_type< _Tp > __to_chars_2 (char *__first, char *__last,
           _Tp __val) noexcept
       template<typename _Tp > __integer_to_chars_result_type< _Tp > __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 _Tp > bool _Power_of_2 (_Tp __x)
       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 _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 _CharT , typename _Traits , typename _String > std::basic_ostream< _CharT, _Traits > &
           operator<< (std::basic_ostream< _CharT, _Traits > &__os, const _Quoted_string< _String, _CharT >
           &__str)
           Inserter for quoted strings.
       template<typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<<
           (std::basic_ostream< _CharT, _Traits > &__os, const _Quoted_string< const _CharT *, _CharT > &__str)
           Inserter for quoted strings.
       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 _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 _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)
           Extractor for delimited strings. The left and right delimiters can be different.

   Variables
       static const _StateIdT _S_invalid_state_id

Detailed Description

       Implementation details not part of the namespace std interface.

Function Documentation

   template<typename _Tp > bool std::__detail::__from_chars_alnum (const char *& __first, const char * __last,
       _Tp & __val, int __base)
       std::from_chars implementation for integers in bases 11 to 36.

   template<typename _Tp > bool std::__detail::__from_chars_binary (const char *& __first, const char * __last,
       _Tp & __val)
       std::from_chars implementation for integers in base 2.

   template<typename _Tp > bool std::__detail::__from_chars_digit (const char *& __first, const char * __last,
       _Tp & __val, int __base)
       std::from_chars implementation for integers in bases 3 to 10.

   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

   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

   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.

       References std::ios_base::skipws.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

                                                    libstdc++                                std::__detail(3cxx)