Provided by: libstdc++-5-doc_5.4.0-6ubuntu1~16.04.12_all bug

NAME

       __gnu_cxx -

SYNOPSIS

   Namespaces
        __detail
        typelist

   Classes
       struct __alloc_traits
       struct __common_pool_policy
       class __mt_alloc
       class __mt_alloc_base
       struct __per_type_pool_policy
       class __pool
       class __pool< false >
       class __pool< true >
       class __pool_alloc
       class __pool_alloc_base
       struct __pool_base
       class __rc_string_base
       class __scoped_lock
       class __versa_string
       struct _Caster
       struct _Char_types
       class _ExtPtr_allocator
       struct _Invalid_type
       class _Pointer_adapter
       class _Relative_pointer_impl
       class _Relative_pointer_impl< const _Tp >
       class _Std_pointer_impl
       struct _Unqualified_type
       struct annotate_base
       class array_allocator
       class array_allocator_base
       class binary_compose
       class bitmap_allocator
       struct char_traits
       struct character
       struct condition_base
       struct constant_binary_fun
       struct constant_unary_fun
       struct constant_void_fun
       class debug_allocator
       class enc_filebuf
       struct encoding_char_traits
       class encoding_state
       struct forced_error
       class free_list
       class hash_map
       class hash_multimap
       class hash_multiset
       class hash_set
       struct limit_condition
       class malloc_allocator
       class new_allocator
       struct project1st
       struct project2nd
       struct random_condition
       struct rb_tree
       class recursive_init_error
       class rope
       struct select1st
       struct select2nd
       class slist
       class stdio_filebuf
       class stdio_sync_filebuf
       class subtractive_rng
       struct temporary_buffer
       class throw_allocator_base
       struct throw_allocator_limit
       struct throw_allocator_random
       struct throw_value_base
       struct throw_value_limit
       struct throw_value_random
       class unary_compose

   Typedefs
       typedef void(* __destroy_handler) (void *)
       typedef __versa_string< char, std::char_traits< char >, std::allocator< char >,
           __rc_string_base > __rc_string
       typedef __vstring __sso_string
       typedef __versa_string< char16_t, std::char_traits< char16_t >, std::allocator< char16_t
           >, __rc_string_base > __u16rc_string
       typedef __u16vstring __u16sso_string
       typedef __versa_string< char16_t > __u16vstring
       typedef __versa_string< char32_t, std::char_traits< char32_t >, std::allocator< char32_t
           >, __rc_string_base > __u32rc_string
       typedef __u32vstring __u32sso_string
       typedef __versa_string< char32_t > __u32vstring
       typedef __versa_string< char > __vstring
       typedef __versa_string< wchar_t, std::char_traits< wchar_t >, std::allocator< wchar_t >,
           __rc_string_base > __wrc_string
       typedef __wvstring __wsso_string
       typedef __versa_string< wchar_t > __wvstring
       typedef rope< char > crope
       typedef rope< wchar_t > wrope

   Enumerations
       enum { _S_num_primes }
       enum _Lock_policy { _S_single, _S_mutex, _S_atomic }

   Functions
       static void __atomic_add_single (_Atomic_word *__mem, int __val)
       else __atomic_add_single (__mem, __val)
       _Atomic_word __attribute__ ((__unused__)) __exchange_and_add(volatile _Atomic_word *
       namespace __cxx11 __attribute__ ((__abi_tag__('cxx11')))
       template<class _Tp > void __aux_require_boolean_expr (const _Tp &__t)
       template<typename _ToType , typename _FromType > _ToType __const_pointer_cast (const
           _FromType &__arg)
       template<typename _ToType , typename _FromType > _ToType __const_pointer_cast (_FromType
           *__arg)
       template<typename _InputIterator , typename _Size , typename _OutputIterator > pair<
           _InputIterator, _OutputIterator > __copy_n (_InputIterator __first, _Size __count,
           _OutputIterator __result, input_iterator_tag)
       template<typename _RAIterator , typename _Size , typename _OutputIterator > pair<
           _RAIterator, _OutputIterator > __copy_n (_RAIterator __first, _Size __count,
           _OutputIterator __result, random_access_iterator_tag)
       template<typename _InputIterator , typename _Distance > void __distance (_InputIterator
           __first, _InputIterator __last, _Distance &__n, std::input_iterator_tag)
       template<typename _RandomAccessIterator , typename _Distance > void __distance
           (_RandomAccessIterator __first, _RandomAccessIterator __last, _Distance &__n,
           std::random_access_iterator_tag)
       template<typename _ToType , typename _FromType > _ToType __dynamic_pointer_cast (const
           _FromType &__arg)
       template<typename _ToType , typename _FromType > _ToType __dynamic_pointer_cast (_FromType
           *__arg)
       void __error_type_must_be_a_signed_integer_type ()
       void __error_type_must_be_an_integer_type ()
       void __error_type_must_be_an_unsigned_integer_type ()
       static _Atomic_word __exchange_and_add_single (_Atomic_word *__mem, int __val)
       else return __exchange_and_add_single (__mem, __val)
       template<class _Concept > void __function_requires ()
       template<typename _Type > bool __is_null_pointer (_Type *__ptr)
       template<typename _Type > bool __is_null_pointer (_Type)
       bool __is_null_pointer (std::nullptr_t)
       template<typename _InputIterator1 , typename _InputIterator2 > int
           __lexicographical_compare_3way (_InputIterator1 __first1, _InputIterator1 __last1,
           _InputIterator2 __first2, _InputIterator2 __last2)
       int __lexicographical_compare_3way (const unsigned char *__first1, const unsigned char
           *__last1, const unsigned char *__first2, const unsigned char *__last2)
       int __lexicographical_compare_3way (const char *__first1, const char *__last1, const char
           *__first2, const char *__last2)
       template<typename _Tp > const _Tp & __median (const _Tp &__a, const _Tp &__b, const _Tp
           &__c)
       template<typename _Tp , typename _Compare > const _Tp & __median (const _Tp &__a, const
           _Tp &__b, const _Tp &__c, _Compare __comp)
       crope::reference __mutable_reference_at (crope &__c, size_t __i)
       template<typename _Tp , typename _Integer , typename _MonoidOperation > _Tp __power (_Tp
           __x, _Integer __n, _MonoidOperation __monoid_op)
       template<typename _Tp , typename _Integer > _Tp __power (_Tp __x, _Integer __n)
       template<typename _InputIterator , typename _RandomAccessIterator , typename _Distance >
           _RandomAccessIterator __random_sample (_InputIterator __first, _InputIterator __last,
           _RandomAccessIterator __out, const _Distance __n)
       template<typename _InputIterator , typename _RandomAccessIterator , typename
           _RandomNumberGenerator , typename _Distance > _RandomAccessIterator __random_sample
           (_InputIterator __first, _InputIterator __last, _RandomAccessIterator __out,
           _RandomNumberGenerator &__rand, const _Distance __n)
       template<typename _ToType , typename _FromType > _ToType __reinterpret_pointer_cast (const
           _FromType &__arg)
       template<typename _ToType , typename _FromType > _ToType __reinterpret_pointer_cast
           (_FromType *__arg)
       _Slist_node_base * __slist_make_link (_Slist_node_base *__prev_node, _Slist_node_base
           *__new_node)
       _Slist_node_base * __slist_previous (_Slist_node_base *__head, const _Slist_node_base
           *__node)
       const _Slist_node_base * __slist_previous (const _Slist_node_base *__head, const
           _Slist_node_base *__node)
       _Slist_node_base * __slist_reverse (_Slist_node_base *__node)
       size_t __slist_size (_Slist_node_base *__node)
       void __slist_splice_after (_Slist_node_base *__pos, _Slist_node_base *__before_first,
           _Slist_node_base *__before_last)
       void __slist_splice_after (_Slist_node_base *__pos, _Slist_node_base *__head)
       template<typename _ToType , typename _FromType > _ToType __static_pointer_cast (const
           _FromType &__arg)
       template<typename _ToType , typename _FromType > _ToType __static_pointer_cast (_FromType
           *__arg)
       size_t __stl_hash_string (const char *__s)
       unsigned long __stl_next_prime (unsigned long __n)
       template<typename _TRet , typename _Ret  = _TRet, typename _CharT , typename... _Base>
           _Ret __stoa (_TRet(*__convf)(const _CharT *, _CharT **, _Base...), const char *__name,
           const _CharT *__str, std::size_t *__idx, _Base...__base)
       void __throw_concurrence_lock_error ()
       void __throw_concurrence_unlock_error ()
       void __throw_forced_error ()
       template<typename _String , typename _CharT  = typename _String::value_type> _String
           __to_xstring (int(*__convf)(_CharT *, std::size_t, const _CharT *, __builtin_va_list),
           std::size_t __n, const _CharT *__fmt,...)
       template<typename _InputIter , typename _Size , typename _ForwardIter > pair< _InputIter,
           _ForwardIter > __uninitialized_copy_n (_InputIter __first, _Size __count, _ForwardIter
           __result, std::input_iterator_tag)
       template<typename _RandomAccessIter , typename _Size , typename _ForwardIter > pair<
           _RandomAccessIter, _ForwardIter > __uninitialized_copy_n (_RandomAccessIter __first,
           _Size __count, _ForwardIter __result, std::random_access_iterator_tag)
       template<typename _InputIter , typename _Size , typename _ForwardIter > pair< _InputIter,
           _ForwardIter > __uninitialized_copy_n (_InputIter __first, _Size __count, _ForwardIter
           __result)
       template<typename _InputIter , typename _Size , typename _ForwardIter , typename
           _Allocator > pair< _InputIter, _ForwardIter > __uninitialized_copy_n_a (_InputIter
           __first, _Size __count, _ForwardIter __result, _Allocator __alloc)
       template<typename _InputIter , typename _Size , typename _ForwardIter , typename _Tp >
           pair< _InputIter, _ForwardIter > __uninitialized_copy_n_a (_InputIter __first, _Size
           __count, _ForwardIter __result, std::allocator< _Tp >)
       void __verbose_terminate_handler ()
       size_t _Bit_scan_forward (size_t __num)
       template<typename _ForwardIterator , typename _Allocator > void _Destroy_const
           (_ForwardIterator __first, _ForwardIterator __last, _Allocator __alloc)
       template<typename _ForwardIterator , typename _Tp > void _Destroy_const (_ForwardIterator
           __first, _ForwardIterator __last, allocator< _Tp >)
       template<class _CharT , class _Traits > void _Rope_fill (basic_ostream< _CharT, _Traits >
           &__o, size_t __n)
       template<class _CharT > bool _Rope_is_simple (_CharT *)
       bool _Rope_is_simple (char *)
       bool _Rope_is_simple (wchar_t *)
       template<class _Rope_iterator > void _Rope_rotate (_Rope_iterator __first, _Rope_iterator
           __middle, _Rope_iterator __last)
       template<class _CharT > void _S_cond_store_eos (_CharT &)
       void _S_cond_store_eos (char &__c)
       void _S_cond_store_eos (wchar_t &__c)
       template<class _CharT > _CharT _S_eos (_CharT *)
       template<class _CharT > bool _S_is_basic_char_type (_CharT *)
       bool _S_is_basic_char_type (char *)
       bool _S_is_basic_char_type (wchar_t *)
       template<class _CharT > bool _S_is_one_byte_char_type (_CharT *)
       bool _S_is_one_byte_char_type (char *)
       template<class _Operation1 , class _Operation2 > unary_compose< _Operation1, _Operation2 >
           compose1 (const _Operation1 &__fn1, const _Operation2 &__fn2)
       template<class _Operation1 , class _Operation2 , class _Operation3 > binary_compose<
           _Operation1, _Operation2, _Operation3 > compose2 (const _Operation1 &__fn1, const
           _Operation2 &__fn2, const _Operation3 &__fn3)
       template<class _Result > constant_void_fun< _Result > constant0 (const _Result &__val)
       template<class _Result > constant_unary_fun< _Result, _Result > constant1 (const _Result
           &__val)
       template<class _Result > constant_binary_fun< _Result, _Result, _Result > constant2 (const
           _Result &__val)
       template<typename _InputIterator , typename _Size , typename _OutputIterator > pair<
           _InputIterator, _OutputIterator > copy_n (_InputIterator __first, _Size __count,
           _OutputIterator __result)
       template<typename _InputIterator , typename _Tp , typename _Size > void count
           (_InputIterator __first, _InputIterator __last, const _Tp &__value, _Size &__n)
       template<typename _InputIterator , typename _Predicate , typename _Size > void count_if
           (_InputIterator __first, _InputIterator __last, _Predicate __pred, _Size &__n)
       template<typename _InputIterator , typename _Distance > void distance (_InputIterator
           __first, _InputIterator __last, _Distance &__n)
       template<class _Tp > _Tp identity_element (std::plus< _Tp >)
       template<class _Tp > _Tp identity_element (std::multiplies< _Tp >)
       template<typename _InputIterator1 , typename _InputIterator2 > int
           lexicographical_compare_3way (_InputIterator1 __first1, _InputIterator1 __last1,
           _InputIterator2 __first2, _InputIterator2 __last2)
       template<class _Ret , class _Tp , class _Arg > mem_fun1_t< _Ret, _Tp, _Arg > mem_fun1
           (_Ret(_Tp::*__f)(_Arg))
       template<class _Ret , class _Tp , class _Arg > const_mem_fun1_t< _Ret, _Tp, _Arg >
           mem_fun1 (_Ret(_Tp::*__f)(_Arg) const)
       template<class _Ret , class _Tp , class _Arg > mem_fun1_ref_t< _Ret, _Tp, _Arg >
           mem_fun1_ref (_Ret(_Tp::*__f)(_Arg))
       template<class _Ret , class _Tp , class _Arg > const_mem_fun1_ref_t< _Ret, _Tp, _Arg >
           mem_fun1_ref (_Ret(_Tp::*__f)(_Arg) const)
       template<typename _Tp > bool operator!= (const new_allocator< _Tp > &, const
           new_allocator< _Tp > &)
       template<typename _Tp > bool operator!= (const malloc_allocator< _Tp > &, const
           malloc_allocator< _Tp > &)
       template<typename _Tp , typename _Array > bool operator!= (const array_allocator< _Tp,
           _Array > &, const array_allocator< _Tp, _Array > &)
       template<typename _Alloc > bool operator!= (const debug_allocator< _Alloc > &__lhs, const
           debug_allocator< _Alloc > &__rhs)
       template<typename _Tp > bool operator!= (const __pool_alloc< _Tp > &, const __pool_alloc<
           _Tp > &)
       template<class _Value , class _HashFcn , class _EqualKey , class _Alloc > bool operator!=
           (const hash_set< _Value, _HashFcn, _EqualKey, _Alloc > &__hs1, const hash_set< _Value,
           _HashFcn, _EqualKey, _Alloc > &__hs2)
       template<class _Key , class _Tp , class _HashFn , class _EqlKey , class _Alloc > bool
           operator!= (const hash_map< _Key, _Tp, _HashFn, _EqlKey, _Alloc > &__hm1, const
           hash_map< _Key, _Tp, _HashFn, _EqlKey, _Alloc > &__hm2)
       template<class _Val , class _HashFcn , class _EqualKey , class _Alloc > bool operator!=
           (const hash_multiset< _Val, _HashFcn, _EqualKey, _Alloc > &__hs1, const hash_multiset<
           _Val, _HashFcn, _EqualKey, _Alloc > &__hs2)
       template<class _Key , class _Tp , class _HF , class _EqKey , class _Alloc > bool
           operator!= (const hash_multimap< _Key, _Tp, _HF, _EqKey, _Alloc > &__hm1, const
           hash_multimap< _Key, _Tp, _HF, _EqKey, _Alloc > &__hm2)
       template<typename _Tp1 , typename _Tp2 > bool operator!= (const _Pointer_adapter< _Tp1 >
           &__lhs, _Tp2 __rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator!= (_Tp1 __lhs, const
           _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator!= (const _Pointer_adapter< _Tp1 >
           &__lhs, const _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp > bool operator!= (const _Pointer_adapter< _Tp > &__lhs, int __rhs)
       template<typename _Tp > bool operator!= (int __lhs, const _Pointer_adapter< _Tp > &__rhs)
       template<typename _Tp > bool operator!= (const _Pointer_adapter< _Tp > &__lhs, const
           _Pointer_adapter< _Tp > &__rhs)
       template<class _Val , class _Key , class _HF , class _Ex , class _Eq , class _All > bool
           operator!= (const hashtable< _Val, _Key, _HF, _Ex, _Eq, _All > &__ht1, const
           hashtable< _Val, _Key, _HF, _Ex, _Eq, _All > &__ht2)
       template<typename _Tp , typename _Poolp > bool operator!= (const __mt_alloc< _Tp, _Poolp >
           &, const __mt_alloc< _Tp, _Poolp > &)
       template<class _Tp , class _Alloc > bool operator!= (const slist< _Tp, _Alloc > &_SL1,
           const slist< _Tp, _Alloc > &_SL2)
       template<typename _IteratorL , typename _IteratorR , typename _Container > bool operator!=
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept
       template<typename _Iterator , typename _Container > bool operator!= (const
           __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator,
           _Container > &__rhs) noexcept
       template<typename _Tp , typename _Cond > bool operator!= (const throw_allocator_base< _Tp,
           _Cond > &, const throw_allocator_base< _Tp, _Cond > &)
       template<typename _Tp1 , typename _Tp2 > bool operator!= (const bitmap_allocator< _Tp1 >
           &, const bitmap_allocator< _Tp2 > &)  throw ()
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator!= (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base
           > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator!= (const _CharT *__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator!= (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const _CharT *__rhs)
       template<class _CharT , class _Alloc > bool operator!= (const _Rope_const_iterator<
           _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator!= (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator!= (const rope< _CharT, _Alloc > &__x,
           const rope< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator!= (const _Rope_char_ptr_proxy<
           _CharT, _Alloc > &__x, const _Rope_char_ptr_proxy< _CharT, _Alloc > &__y)
       template<typename _Cond > throw_value_base< _Cond > operator* (const throw_value_base<
           _Cond > &__a, const throw_value_base< _Cond > &__b)
       template<class _CharT , class _Alloc > _Rope_const_iterator< _CharT, _Alloc > operator+
           (const _Rope_const_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
       template<class _CharT , class _Alloc > _Rope_const_iterator< _CharT, _Alloc > operator+
           (ptrdiff_t __n, const _Rope_const_iterator< _CharT, _Alloc > &__x)
       template<class _CharT , class _Alloc > _Rope_iterator< _CharT, _Alloc > operator+ (const
           _Rope_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
       template<class _CharT , class _Alloc > _Rope_iterator< _CharT, _Alloc > operator+
           (ptrdiff_t __n, const _Rope_iterator< _CharT, _Alloc > &__x)
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > operator+ (const rope<
           _CharT, _Alloc > &__left, const rope< _CharT, _Alloc > &__right)
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > operator+ (const rope<
           _CharT, _Alloc > &__left, const _CharT *__right)
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > operator+ (const rope<
           _CharT, _Alloc > &__left, _CharT __right)
       template<typename _Cond > throw_value_base< _Cond > operator+ (const throw_value_base<
           _Cond > &__a, const throw_value_base< _Cond > &__b)
       template<typename _Iterator , typename _Container > __normal_iterator< _Iterator,
           _Container > operator+ (typename __normal_iterator< _Iterator, _Container
           >::difference_type __n, const __normal_iterator< _Iterator, _Container > &__i)
           noexcept
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > &__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (const _CharT *__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base >
           &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (_CharT __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base >
           &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > &__lhs, const _CharT
           *__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > &__lhs, _CharT
           __rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (__versa_string< _CharT, _Traits, _Alloc, _Base > &&__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > &__lhs,
           __versa_string< _CharT, _Traits, _Alloc, _Base > &&__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (__versa_string< _CharT, _Traits, _Alloc, _Base > &&__lhs, __versa_string<
           _CharT, _Traits, _Alloc, _Base > &&__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (const _CharT *__lhs, __versa_string< _CharT, _Traits, _Alloc, _Base >
           &&__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (_CharT __lhs, __versa_string< _CharT, _Traits, _Alloc, _Base > &&__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (__versa_string< _CharT, _Traits, _Alloc, _Base > &&__lhs, const _CharT
           *__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
           operator+ (__versa_string< _CharT, _Traits, _Alloc, _Base > &&__lhs, _CharT __rhs)
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > & operator+= (rope< _CharT,
           _Alloc > &__left, const rope< _CharT, _Alloc > &__right)
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > & operator+= (rope< _CharT,
           _Alloc > &__left, const _CharT *__right)
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > & operator+= (rope< _CharT,
           _Alloc > &__left, _CharT __right)
       template<class _CharT , class _Alloc > _Rope_const_iterator< _CharT, _Alloc > operator-
           (const _Rope_const_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
       template<class _CharT , class _Alloc > ptrdiff_t operator- (const _Rope_const_iterator<
           _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > _Rope_iterator< _CharT, _Alloc > operator- (const
           _Rope_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
       template<class _CharT , class _Alloc > ptrdiff_t operator- (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<typename _Cond > throw_value_base< _Cond > operator- (const throw_value_base<
           _Cond > &__a, const throw_value_base< _Cond > &__b)
       template<typename _IteratorL , typename _IteratorR , typename _Container > auto operator-
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept-> decltype(__lhs.base()-__rhs.base())
       template<typename _Iterator , typename _Container > __normal_iterator< _Iterator,
           _Container >::difference_type operator- (const __normal_iterator< _Iterator,
           _Container > &__lhs, const __normal_iterator< _Iterator, _Container > &__rhs) noexcept
       template<typename _Value , typename _Int , typename _St > bool operator< (const character<
           _Value, _Int, _St > &lhs, const character< _Value, _Int, _St > &rhs)
       template<class _CharT , class _Alloc > bool operator< (const _Rope_const_iterator< _CharT,
           _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator< (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<typename _Tp1 , typename _Tp2 > bool operator< (const _Pointer_adapter< _Tp1 >
           &__lhs, const _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator< (const _Pointer_adapter< _Tp1 >
           &__lhs, _Tp2 __rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator< (_Tp1 __lhs, const
           _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Cond > bool operator< (const throw_value_base< _Cond > &__a, const
           throw_value_base< _Cond > &__b)
       template<class _Tp , class _Alloc > bool operator< (const slist< _Tp, _Alloc > &_SL1,
           const slist< _Tp, _Alloc > &_SL2)
       template<typename _IteratorL , typename _IteratorR , typename _Container > bool operator<
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept
       template<typename _Iterator , typename _Container > bool operator< (const
           __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator,
           _Container > &__rhs) noexcept
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator< (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base
           > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator< (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const _CharT *__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator< (const _CharT *__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<class _CharT , class _Alloc > bool operator< (const rope< _CharT, _Alloc >
           &__left, const rope< _CharT, _Alloc > &__right)
       template<typename _UIntType , size_t __m, size_t __pos1, size_t __sl1, size_t __sl2,
           size_t __sr1, size_t __sr2, uint32_t __msk1, uint32_t __msk2, uint32_t __msk3,
           uint32_t __msk4, uint32_t __parity1, uint32_t __parity2, uint32_t __parity3, uint32_t
           __parity4, typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits >
           & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           __gnu_cxx::simd_fast_mersenne_twister_engine< _UIntType, __m, __pos1, __sl1, __sl2,
           __sr1, __sr2, __msk1, __msk2, __msk3, __msk4, __parity1, __parity2, __parity3,
           __parity4 > &__x)
       std::ostream & operator<< (std::ostream &os, const annotate_base &__b)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           __gnu_cxx::beta_distribution< _RealType > &__x)
       template<typename _CharT , typename _Traits , typename _StoreT > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           _Pointer_adapter< _StoreT > &__p)
       template<size_t _Dimen, typename _RealType , typename _CharT , typename _Traits >
           std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT,
           _Traits > &__os, const __gnu_cxx::normal_mv_distribution< _Dimen, _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           rice_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           nakagami_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           pareto_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           k_distribution< _RealType > &__x)
       template<class _CharT , class _Traits , class _Alloc > basic_ostream< _CharT, _Traits > &
           operator<< (basic_ostream< _CharT, _Traits > &__o, const rope< _CharT, _Alloc > &__r)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           arcsine_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           hoyt_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           __gnu_cxx::triangular_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           __gnu_cxx::von_mises_distribution< _RealType > &__x)
       template<typename _UIntType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           __gnu_cxx::hypergeometric_distribution< _UIntType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_ostream<
           _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const
           logistic_distribution< _RealType > &__x)
       template<std::size_t _Dimen, typename _RealType , typename _CharT , typename _Traits >
           std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT,
           _Traits > &__os, const __gnu_cxx::uniform_on_sphere_distribution< _Dimen, _RealType >
           &__x)
       template<class _CharT , class _Traits , class _Alloc > std::basic_ostream< _CharT, _Traits
           > & operator<< (std::basic_ostream< _CharT, _Traits > &__o, const rope< _CharT, _Alloc
           > &__r)
       template<typename _Tp1 , typename _Tp2 > bool operator<= (const _Pointer_adapter< _Tp1 >
           &__lhs, _Tp2 __rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator<= (const _Pointer_adapter< _Tp1 >
           &__lhs, const _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator<= (_Tp1 __lhs, const
           _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp > bool operator<= (const _Pointer_adapter< _Tp > &__lhs, const
           _Pointer_adapter< _Tp > &__rhs)
       template<class _Tp , class _Alloc > bool operator<= (const slist< _Tp, _Alloc > &_SL1,
           const slist< _Tp, _Alloc > &_SL2)
       template<typename _IteratorL , typename _IteratorR , typename _Container > bool operator<=
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept
       template<typename _Iterator , typename _Container > bool operator<= (const
           __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator,
           _Container > &__rhs) noexcept
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator<= (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base
           > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator<= (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const _CharT *__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator<= (const _CharT *__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<class _CharT , class _Alloc > bool operator<= (const _Rope_const_iterator<
           _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator<= (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator<= (const rope< _CharT, _Alloc > &__x,
           const rope< _CharT, _Alloc > &__y)
       template<typename _Value , typename _Int , typename _St > bool operator== (const
           character< _Value, _Int, _St > &lhs, const character< _Value, _Int, _St > &rhs)
       template<typename _Tp > bool operator== (const new_allocator< _Tp > &, const
           new_allocator< _Tp > &)
       template<typename _Tp > bool operator== (const malloc_allocator< _Tp > &, const
           malloc_allocator< _Tp > &)
       template<typename _Tp , typename _Array > bool operator== (const array_allocator< _Tp,
           _Array > &, const array_allocator< _Tp, _Array > &)
       template<typename _Tp > bool operator== (const __pool_alloc< _Tp > &, const __pool_alloc<
           _Tp > &)
       template<class _Val , class _Key , class _HF , class _Ex , class _Eq , class _All > bool
           operator== (const hashtable< _Val, _Key, _HF, _Ex, _Eq, _All > &__ht1, const
           hashtable< _Val, _Key, _HF, _Ex, _Eq, _All > &__ht2)
       template<class _Value , class _HashFcn , class _EqualKey , class _Alloc > bool operator==
           (const hash_set< _Value, _HashFcn, _EqualKey, _Alloc > &__hs1, const hash_set< _Value,
           _HashFcn, _EqualKey, _Alloc > &__hs2)
       template<class _Key , class _Tp , class _HashFn , class _EqlKey , class _Alloc > bool
           operator== (const hash_map< _Key, _Tp, _HashFn, _EqlKey, _Alloc > &__hm1, const
           hash_map< _Key, _Tp, _HashFn, _EqlKey, _Alloc > &__hm2)
       template<typename _UIntType , size_t __m, size_t __pos1, size_t __sl1, size_t __sl2,
           size_t __sr1, size_t __sr2, uint32_t __msk1, uint32_t __msk2, uint32_t __msk3,
           uint32_t __msk4, uint32_t __parity1, uint32_t __parity2, uint32_t __parity3, uint32_t
           __parity4> bool operator== (const __gnu_cxx::simd_fast_mersenne_twister_engine<
           _UIntType, __m, __pos1, __sl1, __sl2, __sr1, __sr2, __msk1, __msk2, __msk3, __msk4,
           __parity1, __parity2, __parity3, __parity4 > &__lhs, const
           __gnu_cxx::simd_fast_mersenne_twister_engine< _UIntType, __m, __pos1, __sl1, __sl2,
           __sr1, __sr2, __msk1, __msk2, __msk3, __msk4, __parity1, __parity2, __parity3,
           __parity4 > &__rhs)
       template<class _CharT , class _Alloc > bool operator== (const _Rope_char_ptr_proxy<
           _CharT, _Alloc > &__x, const _Rope_char_ptr_proxy< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator== (const _Rope_const_iterator<
           _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator== (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<class _Val , class _HashFcn , class _EqualKey , class _Alloc > bool operator==
           (const hash_multiset< _Val, _HashFcn, _EqualKey, _Alloc > &__hs1, const hash_multiset<
           _Val, _HashFcn, _EqualKey, _Alloc > &__hs2)
       template<class _Key , class _Tp , class _HF , class _EqKey , class _Alloc > bool
           operator== (const hash_multimap< _Key, _Tp, _HF, _EqKey, _Alloc > &__hm1, const
           hash_multimap< _Key, _Tp, _HF, _EqKey, _Alloc > &__hm2)
       template<typename _Tp1 , typename _Tp2 > bool operator== (const _Pointer_adapter< _Tp1 >
           &__lhs, _Tp2 __rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator== (_Tp1 __lhs, const
           _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator== (const _Pointer_adapter< _Tp1 >
           &__lhs, const _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp > bool operator== (const _Pointer_adapter< _Tp > &__lhs, int __rhs)
       template<typename _Tp > bool operator== (int __lhs, const _Pointer_adapter< _Tp > &__rhs)
       template<typename _Tp > bool operator== (const _Pointer_adapter< _Tp > &__lhs, const
           _Pointer_adapter< _Tp > &__rhs)
       template<size_t _Dimen, typename _RealType > bool operator== (const
           __gnu_cxx::normal_mv_distribution< _Dimen, _RealType > &__d1, const
           __gnu_cxx::normal_mv_distribution< _Dimen, _RealType > &__d2)
       template<typename _Cond > bool operator== (const throw_value_base< _Cond > &__a, const
           throw_value_base< _Cond > &__b)
       template<typename _Tp , typename _Poolp > bool operator== (const __mt_alloc< _Tp, _Poolp >
           &, const __mt_alloc< _Tp, _Poolp > &)
       template<class _Tp , class _Alloc > bool operator== (const slist< _Tp, _Alloc > &_SL1,
           const slist< _Tp, _Alloc > &_SL2)
       template<typename _IteratorL , typename _IteratorR , typename _Container > bool operator==
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept
       template<typename _Iterator , typename _Container > bool operator== (const
           __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator,
           _Container > &__rhs) noexcept
       template<typename _Tp , typename _Cond > bool operator== (const throw_allocator_base< _Tp,
           _Cond > &, const throw_allocator_base< _Tp, _Cond > &)
       template<typename _Tp1 , typename _Tp2 > bool operator== (const bitmap_allocator< _Tp1 >
           &, const bitmap_allocator< _Tp2 > &)  throw ()
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator== (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base
           > &__rhs)
       template<typename _CharT , template< typename, typename, typename > class _Base>
           __enable_if< std::__is_char< _CharT >::__value, bool >::__type operator== (const
           __versa_string< _CharT, std::char_traits< _CharT >, std::allocator< _CharT >, _Base >
           &__lhs, const __versa_string< _CharT, std::char_traits< _CharT >, std::allocator<
           _CharT >, _Base > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator== (const _CharT *__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator== (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const _CharT *__rhs)
       template<class _CharT , class _Alloc > bool operator== (const rope< _CharT, _Alloc >
           &__left, const rope< _CharT, _Alloc > &__right)
       template<typename _Tp1 , typename _Tp2 > bool operator> (const _Pointer_adapter< _Tp1 >
           &__lhs, const _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator> (_Tp1 __lhs, const
           _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator> (const _Pointer_adapter< _Tp1 >
           &__lhs, _Tp2 __rhs)
       template<typename _Tp > bool operator> (const _Pointer_adapter< _Tp > &__lhs, const
           _Pointer_adapter< _Tp > &__rhs)
       template<class _Tp , class _Alloc > bool operator> (const slist< _Tp, _Alloc > &_SL1,
           const slist< _Tp, _Alloc > &_SL2)
       template<typename _IteratorL , typename _IteratorR , typename _Container > bool operator>
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept
       template<typename _Iterator , typename _Container > bool operator> (const
           __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator,
           _Container > &__rhs) noexcept
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator> (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base
           > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator> (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const _CharT *__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator> (const _CharT *__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<class _CharT , class _Alloc > bool operator> (const _Rope_const_iterator< _CharT,
           _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator> (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator> (const rope< _CharT, _Alloc > &__x,
           const rope< _CharT, _Alloc > &__y)
       template<typename _Tp1 , typename _Tp2 > bool operator>= (const _Pointer_adapter< _Tp1 >
           &__lhs, const _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator>= (_Tp1 __lhs, const
           _Pointer_adapter< _Tp2 > &__rhs)
       template<typename _Tp1 , typename _Tp2 > bool operator>= (const _Pointer_adapter< _Tp1 >
           &__lhs, _Tp2 __rhs)
       template<typename _Tp > bool operator>= (const _Pointer_adapter< _Tp > &__lhs, const
           _Pointer_adapter< _Tp > &__rhs)
       template<class _Tp , class _Alloc > bool operator>= (const slist< _Tp, _Alloc > &_SL1,
           const slist< _Tp, _Alloc > &_SL2)
       template<typename _IteratorL , typename _IteratorR , typename _Container > bool operator>=
           (const __normal_iterator< _IteratorL, _Container > &__lhs, const __normal_iterator<
           _IteratorR, _Container > &__rhs) noexcept
       template<typename _Iterator , typename _Container > bool operator>= (const
           __normal_iterator< _Iterator, _Container > &__lhs, const __normal_iterator< _Iterator,
           _Container > &__rhs) noexcept
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator>= (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base
           > &__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator>= (const __versa_string< _CharT,
           _Traits, _Alloc, _Base > &__lhs, const _CharT *__rhs)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> bool operator>= (const _CharT *__lhs, const
           __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<class _CharT , class _Alloc > bool operator>= (const _Rope_const_iterator<
           _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator>= (const _Rope_iterator< _CharT,
           _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
       template<class _CharT , class _Alloc > bool operator>= (const rope< _CharT, _Alloc > &__x,
           const rope< _CharT, _Alloc > &__y)
       template<typename _UIntType , size_t __m, size_t __pos1, size_t __sl1, size_t __sl2,
           size_t __sr1, size_t __sr2, uint32_t __msk1, uint32_t __msk2, uint32_t __msk3,
           uint32_t __msk4, uint32_t __parity1, uint32_t __parity2, uint32_t __parity3, uint32_t
           __parity4, typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits >
           & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           __gnu_cxx::simd_fast_mersenne_twister_engine< _UIntType, __m, __pos1, __sl1, __sl2,
           __sr1, __sr2, __msk1, __msk2, __msk3, __msk4, __parity1, __parity2, __parity3,
           __parity4 > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           __gnu_cxx::beta_distribution< _RealType > &__x)
       template<size_t _Dimen, typename _RealType , typename _CharT , typename _Traits >
           std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT,
           _Traits > &__is, __gnu_cxx::normal_mv_distribution< _Dimen, _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           rice_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           nakagami_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           pareto_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           k_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           arcsine_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           hoyt_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           __gnu_cxx::triangular_distribution< _RealType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           __gnu_cxx::von_mises_distribution< _RealType > &__x)
       template<typename _UIntType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           __gnu_cxx::hypergeometric_distribution< _UIntType > &__x)
       template<typename _RealType , typename _CharT , typename _Traits > std::basic_istream<
           _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           logistic_distribution< _RealType > &__x)
       template<std::size_t _Dimen, typename _RealType , typename _CharT , typename _Traits >
           std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT,
           _Traits > &__is, __gnu_cxx::uniform_on_sphere_distribution< _Dimen, _RealType > &__x)
       template<typename _Tp , typename _Integer , typename _MonoidOperation > _Tp power (_Tp
           __x, _Integer __n, _MonoidOperation __monoid_op)
       template<typename _Tp , typename _Integer > _Tp power (_Tp __x, _Integer __n)
       template<typename _InputIterator , typename _RandomAccessIterator > _RandomAccessIterator
           random_sample (_InputIterator __first, _InputIterator __last, _RandomAccessIterator
           __out_first, _RandomAccessIterator __out_last)
       template<typename _InputIterator , typename _RandomAccessIterator , typename
           _RandomNumberGenerator > _RandomAccessIterator random_sample (_InputIterator __first,
           _InputIterator __last, _RandomAccessIterator __out_first, _RandomAccessIterator
           __out_last, _RandomNumberGenerator &__rand)
       template<typename _ForwardIterator , typename _OutputIterator , typename _Distance >
           _OutputIterator random_sample_n (_ForwardIterator __first, _ForwardIterator __last,
           _OutputIterator __out, const _Distance __n)
       template<typename _ForwardIterator , typename _OutputIterator , typename _Distance ,
           typename _RandomNumberGenerator > _OutputIterator random_sample_n (_ForwardIterator
           __first, _ForwardIterator __last, _OutputIterator __out, const _Distance __n,
           _RandomNumberGenerator &__rand)
       void rotate (_Rope_iterator< char, __STL_DEFAULT_ALLOCATOR(char)> __first, _Rope_iterator<
           char, __STL_DEFAULT_ALLOCATOR(char)> __middle, _Rope_iterator< char,
           __STL_DEFAULT_ALLOCATOR(char)> __last)
       template<typename _Tp > void swap (_ExtPtr_allocator< _Tp > &__larg, _ExtPtr_allocator<
           _Tp > &__rarg)
       template<class _Val , class _HashFcn , class _EqualKey , class _Alloc > void swap
           (hash_set< _Val, _HashFcn, _EqualKey, _Alloc > &__hs1, hash_set< _Val, _HashFcn,
           _EqualKey, _Alloc > &__hs2)
       template<class _Key , class _Tp , class _HashFn , class _EqlKey , class _Alloc > void swap
           (hash_map< _Key, _Tp, _HashFn, _EqlKey, _Alloc > &__hm1, hash_map< _Key, _Tp, _HashFn,
           _EqlKey, _Alloc > &__hm2)
       template<class _Val , class _HashFcn , class _EqualKey , class _Alloc > void swap
           (hash_multiset< _Val, _HashFcn, _EqualKey, _Alloc > &__hs1, hash_multiset< _Val,
           _HashFcn, _EqualKey, _Alloc > &__hs2)
       template<class _Key , class _Tp , class _HashFn , class _EqlKey , class _Alloc > void swap
           (hash_multimap< _Key, _Tp, _HashFn, _EqlKey, _Alloc > &__hm1, hash_multimap< _Key,
           _Tp, _HashFn, _EqlKey, _Alloc > &__hm2)
       template<typename _Cond > void swap (throw_value_base< _Cond > &__a, throw_value_base<
           _Cond > &__b)
       template<class _Val , class _Key , class _HF , class _Extract , class _EqKey , class _All
           > void swap (hashtable< _Val, _Key, _HF, _Extract, _EqKey, _All > &__ht1, hashtable<
           _Val, _Key, _HF, _Extract, _EqKey, _All > &__ht2)
       template<class _Tp , class _Alloc > void swap (slist< _Tp, _Alloc > &__x, slist< _Tp,
           _Alloc > &__y)
       template<class _CharT , class __Alloc > void swap (_Rope_char_ref_proxy< _CharT, __Alloc >
           __a, _Rope_char_ref_proxy< _CharT, __Alloc > __b)
       template<typename _CharT , typename _Traits , typename _Alloc , template< typename,
           typename, typename > class _Base> void swap (__versa_string< _CharT, _Traits, _Alloc,
           _Base > &__lhs, __versa_string< _CharT, _Traits, _Alloc, _Base > &__rhs)
       template<class _CharT , class _Alloc > void swap (rope< _CharT, _Alloc > &__x, rope<
           _CharT, _Alloc > &__y)
       _Atomic_word int throw ()
       template<typename _InputIter , typename _Size , typename _ForwardIter > pair< _InputIter,
           _ForwardIter > uninitialized_copy_n (_InputIter __first, _Size __count, _ForwardIter
           __result)

   Variables
       static const _Lock_policy __default_lock_policy
       static _Atomic_word int __val
       template<class _CharT , class _Alloc > rope< _CharT, _Alloc > identity_element
           (_Rope_Concat_fn< _CharT, _Alloc >)

Detailed Description

       GNU extensions for public use.

Function Documentation

   template<typename _ToType , typename _FromType > _ToType __gnu_cxx::__static_pointer_cast
       (const _FromType & __arg) [inline]
       Casting operations for cases where _FromType is not a standard pointer. _ToType can be a
       standard or non-standard pointer. Given that _FromType is not a pointer, it must have a
       get() method that returns the standard pointer equivalent of the address it points to, and
       must have an element_type typedef which names the type it points to.

       Definition at line 68 of file cast.h.

   template<typename _ToType , typename _FromType > _ToType __gnu_cxx::__static_pointer_cast
       (_FromType * __arg) [inline]
       Casting operations for cases where _FromType is a standard pointer. _ToType can be a
       standard or non-standard pointer.

       Definition at line 96 of file cast.h.

   size_t __gnu_cxx::_Bit_scan_forward (size_t __num) [inline]
       Generic Version of the bsf instruction.

       Definition at line 513 of file bitmap_allocator.h.

       Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_allocate_single_object().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator!= (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       [inline]
       Test difference of two strings.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Returns:
           True if __lhs.compare(__rhs) != 0. False otherwise.

       Definition at line 2388 of file vstring.h.

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator!= (const _CharT * __lhs, const
       __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Test difference of C string and string.

       Parameters:
           __lhs C string.
           __rhs String.

       Returns:
           True if __rhs.compare(__lhs) != 0. False otherwise.

       Definition at line 2401 of file vstring.h.

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator!= (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const _CharT * __rhs) [inline]
       Test difference of string and C string.

       Parameters:
           __lhs String.
           __rhs C string.

       Returns:
           True if __lhs.compare(__rhs) != 0. False otherwise.

       Definition at line 2414 of file vstring.h.

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
       __gnu_cxx::operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > & __lhs,
       const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       Concatenate two strings.

       Parameters:
           __lhs First string.
           __rhs Last string.

       Returns:
           New string with value of __lhs followed by __rhs.

       Definition at line 181 of file vstring.tcc.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::append(),
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::reserve(), and
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::size().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
       __gnu_cxx::operator+ (const _CharT * __lhs, const __versa_string< _CharT, _Traits, _Alloc,
       _Base > & __rhs)
       Concatenate C string and string.

       Parameters:
           __lhs First string.
           __rhs Last string.

       Returns:
           New string with value of __lhs followed by __rhs.

       Definition at line 194 of file vstring.tcc.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::size().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
       __gnu_cxx::operator+ (_CharT __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base >
       & __rhs)
       Concatenate character and string.

       Parameters:
           __lhs First string.
           __rhs Last string.

       Returns:
           New string with __lhs followed by __rhs.

       Definition at line 211 of file vstring.tcc.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::append(),
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::push_back(),
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::reserve(), and
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::size().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
       __gnu_cxx::operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > & __lhs,
       const _CharT * __rhs)
       Concatenate string and C string.

       Parameters:
           __lhs First string.
           __rhs Last string.

       Returns:
           New string with __lhs followed by __rhs.

       Definition at line 224 of file vstring.tcc.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::size().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> __versa_string< _CharT, _Traits, _Alloc, _Base >
       __gnu_cxx::operator+ (const __versa_string< _CharT, _Traits, _Alloc, _Base > & __lhs,
       _CharT __rhs)
       Concatenate string and character.

       Parameters:
           __lhs First string.
           __rhs Last string.

       Returns:
           New string with __lhs followed by __rhs.

       Definition at line 241 of file vstring.tcc.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::append(),
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::copy(),
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::push_back(),
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::reserve(), and
       __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::size().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator< (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       [inline]
       Test if string precedes string.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Returns:
           True if __lhs precedes __rhs. False otherwise.

       Definition at line 2428 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator< (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const _CharT * __rhs) [inline]
       Test if string precedes C string.

       Parameters:
           __lhs String.
           __rhs C string.

       Returns:
           True if __lhs precedes __rhs. False otherwise.

       Definition at line 2441 of file vstring.h.

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator< (const _CharT * __lhs, const
       __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Test if C string precedes string.

       Parameters:
           __lhs C string.
           __rhs String.

       Returns:
           True if __lhs precedes __rhs. False otherwise.

       Definition at line 2454 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator<= (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       [inline]
       Test if string doesn't follow string.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Returns:
           True if __lhs doesn't follow __rhs. False otherwise.

       Definition at line 2508 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator<= (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const _CharT * __rhs) [inline]
       Test if string doesn't follow C string.

       Parameters:
           __lhs String.
           __rhs C string.

       Returns:
           True if __lhs doesn't follow __rhs. False otherwise.

       Definition at line 2521 of file vstring.h.

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator<= (const _CharT * __lhs, const
       __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Test if C string doesn't follow string.

       Parameters:
           __lhs C string.
           __rhs String.

       Returns:
           True if __lhs doesn't follow __rhs. False otherwise.

       Definition at line 2534 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _Tp > bool __gnu_cxx::operator== (const _Pointer_adapter< _Tp > & __lhs,
       const _Pointer_adapter< _Tp > & __rhs) [inline]
       Comparison operators for _Pointer_adapter defer to the base class' comparison operators,
       when possible.

       Definition at line 529 of file pointer.h.

       References std::addressof().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator== (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       [inline]
       Test equivalence of two strings.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Returns:
           True if __lhs.compare(__rhs) == 0. False otherwise.

       Definition at line 2337 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator== (const _CharT * __lhs, const
       __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Test equivalence of C string and string.

       Parameters:
           __lhs C string.
           __rhs String.

       Returns:
           True if __rhs.compare(__lhs) == 0. False otherwise.

       Definition at line 2361 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator== (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const _CharT * __rhs) [inline]
       Test equivalence of string and C string.

       Parameters:
           __lhs String.
           __rhs C string.

       Returns:
           True if __lhs.compare(__rhs) == 0. False otherwise.

       Definition at line 2374 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator> (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       [inline]
       Test if string follows string.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Returns:
           True if __lhs follows __rhs. False otherwise.

       Definition at line 2468 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator> (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const _CharT * __rhs) [inline]
       Test if string follows C string.

       Parameters:
           __lhs String.
           __rhs C string.

       Returns:
           True if __lhs follows __rhs. False otherwise.

       Definition at line 2481 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator> (const _CharT * __lhs, const
       __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Test if C string follows string.

       Parameters:
           __lhs C string.
           __rhs String.

       Returns:
           True if __lhs follows __rhs. False otherwise.

       Definition at line 2494 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator>= (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs)
       [inline]
       Test if string doesn't precede string.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Returns:
           True if __lhs doesn't precede __rhs. False otherwise.

       Definition at line 2548 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator>= (const __versa_string< _CharT, _Traits,
       _Alloc, _Base > & __lhs, const _CharT * __rhs) [inline]
       Test if string doesn't precede C string.

       Parameters:
           __lhs String.
           __rhs C string.

       Returns:
           True if __lhs doesn't precede __rhs. False otherwise.

       Definition at line 2561 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> bool __gnu_cxx::operator>= (const _CharT * __lhs, const
       __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Test if C string doesn't precede string.

       Parameters:
           __lhs C string.
           __rhs String.

       Returns:
           True if __lhs doesn't precede __rhs. False otherwise.

       Definition at line 2574 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::compare().

   template<typename _CharT , typename _Traits , typename _Alloc , template< typename, typename,
       typename > class _Base> void __gnu_cxx::swap (__versa_string< _CharT, _Traits, _Alloc,
       _Base > & __lhs, __versa_string< _CharT, _Traits, _Alloc, _Base > & __rhs) [inline]
       Swap contents of two strings.

       Parameters:
           __lhs First string.
           __rhs Second string.

       Exchanges the contents of __lhs and __rhs in constant time.

       Definition at line 2588 of file vstring.h.

       References __gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >::swap().

Author

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