| 
| template<class _Traits >  | 
| constexpr bool  | _Traits_equal (_In_reads_(_Left_size) const _Traits_ptr_t< _Traits > _Left, const size_t _Left_size, _In_reads_(_Right_size) const _Traits_ptr_t< _Traits > _Right, const size_t _Right_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 int  | _Traits_compare (_In_reads_(_Left_size) const _Traits_ptr_t< _Traits > _Left, const size_t _Left_size, _In_reads_(_Right_size) const _Traits_ptr_t< _Traits > _Right, const size_t _Right_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, _In_reads_(_Needle_size) const _Traits_ptr_t< _Traits > _Needle, const size_t _Needle_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find_ch (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, const _Traits_ch_t< _Traits > _Ch) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_rfind (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, _In_reads_(_Needle_size) const _Traits_ptr_t< _Traits > _Needle, const size_t _Needle_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_rfind_ch (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, const _Traits_ch_t< _Traits > _Ch) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find_first_of (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, _In_reads_(_Needle_size) const _Traits_ptr_t< _Traits > _Needle, const size_t _Needle_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find_last_of (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, _In_reads_(_Needle_size) const _Traits_ptr_t< _Traits > _Needle, const size_t _Needle_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find_first_not_of (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, _In_reads_(_Needle_size) const _Traits_ptr_t< _Traits > _Needle, const size_t _Needle_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find_not_ch (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, const _Traits_ch_t< _Traits > _Ch) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_find_last_not_of (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, _In_reads_(_Needle_size) const _Traits_ptr_t< _Traits > _Needle, const size_t _Needle_size) _NOEXCEPT | 
|   | 
| template<class _Traits >  | 
| _CONSTEXPR14 size_t  | _Traits_rfind_not_ch (_In_reads_(_Hay_size) const _Traits_ptr_t< _Traits > _Haystack, const size_t _Hay_size, const size_t _Start_at, const _Traits_ch_t< _Traits > _Ch) _NOEXCEPT | 
|   | 
| template<class _Mystr >  | 
| _String_const_iterator< _Mystr >::_Unchecked_type  | _Unchecked (_String_const_iterator< _Mystr > _Iter) | 
|   | 
| template<class _Mystr >  | 
| _String_const_iterator< _Mystr >  | _Rechecked (_String_const_iterator< _Mystr > &_Iter, typename _String_const_iterator< _Mystr >::_Unchecked_type _Right) | 
|   | 
| template<class _Mystr >  | 
| _String_const_iterator< _Mystr >  | operator+ (typename _String_const_iterator< _Mystr >::difference_type _Off, _String_const_iterator< _Mystr > _Next) | 
|   | 
| template<class _Mystr >  | 
| _String_iterator< _Mystr >::_Unchecked_type  | _Unchecked (_String_iterator< _Mystr > _Iter) | 
|   | 
| template<class _Mystr >  | 
| _String_iterator< _Mystr >  | _Rechecked (_String_iterator< _Mystr > &_Iter, typename _String_iterator< _Mystr >::_Unchecked_type _Right) | 
|   | 
| template<class _Mystr >  | 
| _String_iterator< _Mystr >  | operator+ (typename _String_iterator< _Mystr >::difference_type _Off, _String_iterator< _Mystr > _Next) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| void  | swap (basic_string< _Elem, _Traits, _Alloc > &_Left, basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT_OP(_NOEXCEPT_OP(_Left.swap(_Right))) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (const _Elem _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, basic_string< _Elem, _Traits, _Alloc > &&_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, basic_string< _Elem, _Traits, _Alloc > &&_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (_In_z_ const _Elem *const _Left, basic_string< _Elem, _Traits, _Alloc > &&_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (const _Elem _Left, basic_string< _Elem, _Traits, _Alloc > &&_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| basic_string< _Elem, _Traits, _Alloc >  | operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, const _Elem _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator== (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator== (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator== (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator!= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator!= (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator!= (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator< (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator< (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator< (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator> (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator> (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator> (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator<= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator<= (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator<= (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator>= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) _NOEXCEPT | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator>= (_In_z_ const _Elem *const _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right) | 
|   | 
| template<class _Elem , class _Traits , class _Alloc >  | 
| bool  | operator>= (const basic_string< _Elem, _Traits, _Alloc > &_Left, _In_z_ const _Elem *const _Right) | 
|   |