Lines Matching refs:basic_string
75 class basic_string
95 basic_string()
97 explicit basic_string(const allocator_type& a);
98 basic_string(const basic_string& str);
99 basic_string(basic_string&& str)
101 basic_string(const basic_string& str, size_type pos,
103 basic_string(const basic_string& str, size_type pos, size_type n,
106 … basic_string(const T& t, size_type pos, size_type n, const Allocator& a = Allocator()); // C++17
107 …explicit basic_string(const basic_string_view<charT, traits> sv, const Allocator& a = Allocator());
108 basic_string(const value_type* s, const allocator_type& a = allocator_type());
109 basic_string(const value_type* s, size_type n, const allocator_type& a = allocator_type());
110 basic_string(size_type n, value_type c, const allocator_type& a = allocator_type());
112 basic_string(InputIterator begin, InputIterator end,
114 basic_string(initializer_list<value_type>, const Allocator& = Allocator());
115 basic_string(const basic_string&, const Allocator&);
116 basic_string(basic_string&&, const Allocator&);
118 ~basic_string();
122 basic_string& operator=(const basic_string& str);
123 basic_string& operator=(basic_string_view<charT, traits> sv);
124 basic_string& operator=(basic_string&& str)
128 basic_string& operator=(const value_type* s);
129 basic_string& operator=(value_type c);
130 basic_string& operator=(initializer_list<value_type>);
166 basic_string& operator+=(const basic_string& str);
167 basic_string& operator+=(basic_string_view<charT, traits> sv);
168 basic_string& operator+=(const value_type* s);
169 basic_string& operator+=(value_type c);
170 basic_string& operator+=(initializer_list<value_type>);
172 basic_string& append(const basic_string& str);
173 basic_string& append(basic_string_view<charT, traits> sv);
174 basic_string& append(const basic_string& str, size_type pos, size_type n=npos); //C++14
176 basic_string& append(const T& t, size_type pos, size_type n=npos); // C++17
177 basic_string& append(const value_type* s, size_type n);
178 basic_string& append(const value_type* s);
179 basic_string& append(size_type n, value_type c);
181 basic_string& append(InputIterator first, InputIterator last);
182 basic_string& append(initializer_list<value_type>);
191 basic_string& assign(const basic_string& str);
192 basic_string& assign(basic_string_view<charT, traits> sv);
193 basic_string& assign(basic_string&& str);
194 basic_string& assign(const basic_string& str, size_type pos, size_type n=npos); // C++14
196 basic_string& assign(const T& t, size_type pos, size_type n=npos); // C++17
197 basic_string& assign(const value_type* s, size_type n);
198 basic_string& assign(const value_type* s);
199 basic_string& assign(size_type n, value_type c);
201 basic_string& assign(InputIterator first, InputIterator last);
202 basic_string& assign(initializer_list<value_type>);
204 basic_string& insert(size_type pos1, const basic_string& str);
205 basic_string& insert(size_type pos1, basic_string_view<charT, traits> sv);
206 basic_string& insert(size_type pos1, const basic_string& str,
209 basic_string& insert(size_type pos1, const T& t, size_type pos2, size_type n); // C++17
210 basic_string& insert(size_type pos, const value_type* s, size_type n=npos); //C++14
211 basic_string& insert(size_type pos, const value_type* s);
212 basic_string& insert(size_type pos, size_type n, value_type c);
219 basic_string& erase(size_type pos = 0, size_type n = npos);
223 basic_string& replace(size_type pos1, size_type n1, const basic_string& str);
224 basic_string& replace(size_type pos1, size_type n1, basic_string_view<charT, traits> sv);
225 basic_string& replace(size_type pos1, size_type n1, const basic_string& str,
228 basic_string& replace(size_type pos1, size_type n1, const T& t,
230 basic_string& replace(size_type pos, size_type n1, const value_type* s, size_type n2);
231 basic_string& replace(size_type pos, size_type n1, const value_type* s);
232 basic_string& replace(size_type pos, size_type n1, size_type n2, value_type c);
233 basic_string& replace(const_iterator i1, const_iterator i2, const basic_string& str);
234 … basic_string& replace(const_iterator i1, const_iterator i2, basic_string_view<charT, traits> sv);
235 basic_string& replace(const_iterator i1, const_iterator i2, const value_type* s, size_type n);
236 basic_string& replace(const_iterator i1, const_iterator i2, const value_type* s);
237 basic_string& replace(const_iterator i1, const_iterator i2, size_type n, value_type c);
239 … basic_string& replace(const_iterator i1, const_iterator i2, InputIterator j1, InputIterator j2);
240 basic_string& replace(const_iterator i1, const_iterator i2, initializer_list<value_type>);
243 basic_string substr(size_type pos = 0, size_type n = npos) const;
245 void swap(basic_string& str)
255 size_type find(const basic_string& str, size_type pos = 0) const noexcept;
261 size_type rfind(const basic_string& str, size_type pos = npos) const noexcept;
267 size_type find_first_of(const basic_string& str, size_type pos = 0) const noexcept;
273 size_type find_last_of(const basic_string& str, size_type pos = npos) const noexcept;
279 size_type find_first_not_of(const basic_string& str, size_type pos = 0) const noexcept;
285 size_type find_last_not_of(const basic_string& str, size_type pos = npos) const noexcept;
291 int compare(const basic_string& str) const noexcept;
293 int compare(size_type pos1, size_type n1, const basic_string& str) const;
295 int compare(size_type pos1, size_type n1, const basic_string& str,
308 basic_string<charT, traits, Allocator>
309 operator+(const basic_string<charT, traits, Allocator>& lhs,
310 const basic_string<charT, traits, Allocator>& rhs);
313 basic_string<charT, traits, Allocator>
314 operator+(const charT* lhs , const basic_string<charT,traits,Allocator>&rhs);
317 basic_string<charT, traits, Allocator>
318 operator+(charT lhs, const basic_string<charT,traits,Allocator>& rhs);
321 basic_string<charT, traits, Allocator>
322 operator+(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs);
325 basic_string<charT, traits, Allocator>
326 operator+(const basic_string<charT, traits, Allocator>& lhs, charT rhs);
329 bool operator==(const basic_string<charT, traits, Allocator>& lhs,
330 const basic_string<charT, traits, Allocator>& rhs) noexcept;
333 bool operator==(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
336 bool operator==(const basic_string<charT,traits,Allocator>& lhs, const charT* rhs) noexcept;
339 bool operator!=(const basic_string<charT,traits,Allocator>& lhs,
340 const basic_string<charT, traits, Allocator>& rhs) noexcept;
343 bool operator!=(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
346 bool operator!=(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept;
349 bool operator< (const basic_string<charT, traits, Allocator>& lhs,
350 const basic_string<charT, traits, Allocator>& rhs) noexcept;
353 bool operator< (const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept;
356 bool operator< (const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
359 bool operator> (const basic_string<charT, traits, Allocator>& lhs,
360 const basic_string<charT, traits, Allocator>& rhs) noexcept;
363 bool operator> (const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept;
366 bool operator> (const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
369 bool operator<=(const basic_string<charT, traits, Allocator>& lhs,
370 const basic_string<charT, traits, Allocator>& rhs) noexcept;
373 bool operator<=(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept;
376 bool operator<=(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
379 bool operator>=(const basic_string<charT, traits, Allocator>& lhs,
380 const basic_string<charT, traits, Allocator>& rhs) noexcept;
383 bool operator>=(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept;
386 bool operator>=(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
389 void swap(basic_string<charT, traits, Allocator>& lhs,
390 basic_string<charT, traits, Allocator>& rhs)
395 operator>>(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str);
399 operator<<(basic_ostream<charT, traits>& os, const basic_string<charT, traits, Allocator>& str);
403 getline(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str,
408 getline(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str);
410 typedef basic_string<char> string;
411 typedef basic_string<wchar_t> wstring;
412 typedef basic_string<char16_t> u16string;
413 typedef basic_string<char32_t> u32string;
460 basic_string<char> operator "" s( const char *str, size_t len ); // C++14
461 basic_string<wchar_t> operator "" s( const wchar_t *str, size_t len ); // C++14
462 basic_string<char16_t> operator "" s( const char16_t *str, size_t len ); // C++14
463 basic_string<char32_t> operator "" s( const char32_t *str, size_t len ); // C++14
534 // basic_string
537 basic_string<_CharT, _Traits, _Allocator>
538 operator+(const basic_string<_CharT, _Traits, _Allocator>& __x,
539 const basic_string<_CharT, _Traits, _Allocator>& __y);
542 basic_string<_CharT, _Traits, _Allocator>
543 operator+(const _CharT* __x, const basic_string<_CharT,_Traits,_Allocator>& __y);
546 basic_string<_CharT, _Traits, _Allocator>
547 operator+(_CharT __x, const basic_string<_CharT,_Traits,_Allocator>& __y);
550 basic_string<_CharT, _Traits, _Allocator>
551 operator+(const basic_string<_CharT, _Traits, _Allocator>& __x, const _CharT* __y);
554 basic_string<_CharT, _Traits, _Allocator>
555 operator+(const basic_string<_CharT, _Traits, _Allocator>& __x, _CharT __y);
569 _VSTD::__throw_length_error("basic_string");
576 _VSTD::__throw_out_of_range("basic_string");
633 class _LIBCPP_TEMPLATE_VIS basic_string
637 typedef basic_string __self;
650 static_assert(is_pod<value_type>::value, "Character type of basic_string must be a POD");
753 _LIBCPP_INLINE_VISIBILITY basic_string()
756 _LIBCPP_INLINE_VISIBILITY explicit basic_string(const allocator_type& __a)
763 basic_string(const basic_string& __str);
764 basic_string(const basic_string& __str, const allocator_type& __a);
768 basic_string(basic_string&& __str)
776 basic_string(basic_string&& __str, const allocator_type& __a);
778 _LIBCPP_INLINE_VISIBILITY basic_string(const _CharT* __s);
780 basic_string(const _CharT* __s, const _Allocator& __a);
782 basic_string(const _CharT* __s, size_type __n);
784 basic_string(const _CharT* __s, size_type __n, const _Allocator& __a);
786 basic_string(size_type __n, _CharT __c);
788 basic_string(size_type __n, _CharT __c, const _Allocator& __a);
789 basic_string(const basic_string& __str, size_type __pos, size_type __n,
792 basic_string(const basic_string& __str, size_type __pos,
796 basic_string(const _Tp& __t, size_type __pos, size_type __n,
800 basic_string(__self_view __sv);
802 basic_string(__self_view __sv, const _Allocator& __a);
805 basic_string(_InputIterator __first, _InputIterator __last);
808 basic_string(_InputIterator __first, _InputIterator __last, const allocator_type& __a);
811 basic_string(initializer_list<_CharT> __il);
813 basic_string(initializer_list<_CharT> __il, const _Allocator& __a);
816 inline ~basic_string();
821 basic_string& operator=(const basic_string& __str);
827 basic_string& operator=(__self_view __sv) {return assign(__sv);}
830 basic_string& operator=(basic_string&& __str)
833 _LIBCPP_INLINE_VISIBILITY basic_string& operator=(const value_type* __s) {return assign(__s);}
834 basic_string& operator=(value_type __c);
837 …basic_string& operator=(initializer_list<value_type> __il) {return assign(__il.begin(), __il.size(…
917 …_LIBCPP_INLINE_VISIBILITY basic_string& operator+=(const basic_string& __str) {return append(__str…
918 …_LIBCPP_INLINE_VISIBILITY basic_string& operator+=(__self_view __sv) {return append(__sv)…
919 …_LIBCPP_INLINE_VISIBILITY basic_string& operator+=(const value_type* __s) {return append(__s);}
920 …_LIBCPP_INLINE_VISIBILITY basic_string& operator+=(value_type __c) {push_back(__c); ret…
922 …_LIBCPP_INLINE_VISIBILITY basic_string& operator+=(initializer_list<value_type> __il) {return appe…
926 basic_string& append(const basic_string& __str);
928 basic_string& append(__self_view __sv) { return append(__sv.data(), __sv.size()); }
929 basic_string& append(const basic_string& __str, size_type __pos, size_type __n=npos);
935 basic_string&
938 basic_string& append(const value_type* __s, size_type __n);
939 basic_string& append(const value_type* __s);
940 basic_string& append(size_type __n, value_type __c);
943 basic_string& __append_forward_unsafe(_ForwardIterator, _ForwardIterator);
950 basic_string&
954 const basic_string __temp (__first, __last, __alloc());
964 basic_string&
973 …basic_string& append(initializer_list<value_type> __il) {return append(__il.begin(), __il.size());}
985 basic_string& assign(__self_view __sv) { return assign(__sv.data(), __sv.size()); }
987 basic_string& assign(const basic_string& __str) { return *this = __str; }
990 basic_string& assign(basic_string&& str)
994 basic_string& assign(const basic_string& __str, size_type __pos, size_type __n=npos);
1000 basic_string&
1003 basic_string& assign(const value_type* __s, size_type __n);
1004 basic_string& assign(const value_type* __s);
1005 basic_string& assign(size_type __n, value_type __c);
1012 basic_string&
1021 basic_string&
1026 …basic_string& assign(initializer_list<value_type> __il) {return assign(__il.begin(), __il.size());}
1030 basic_string& insert(size_type __pos1, const basic_string& __str);
1032 …basic_string& insert(size_type __pos1, __self_view __sv) { return insert(__pos1, __sv.data(), __sv…
1038 basic_string&
1041 …basic_string& insert(size_type __pos1, const basic_string& __str, size_type __pos2, size_type __n=…
1042 basic_string& insert(size_type __pos, const value_type* __s, size_type __n);
1043 basic_string& insert(size_type __pos, const value_type* __s);
1044 basic_string& insert(size_type __pos, size_type __n, value_type __c);
1072 basic_string& erase(size_type __pos = 0, size_type __n = npos);
1079 basic_string& replace(size_type __pos1, size_type __n1, const basic_string& __str);
1081 …basic_string& replace(size_type __pos1, size_type __n1, __self_view __sv) { return replace(__pos1,…
1082 …basic_string& replace(size_type __pos1, size_type __n1, const basic_string& __str, size_type __pos…
1088 basic_string&
1091 basic_string& replace(size_type __pos, size_type __n1, const value_type* __s, size_type __n2);
1092 basic_string& replace(size_type __pos, size_type __n1, const value_type* __s);
1093 basic_string& replace(size_type __pos, size_type __n1, size_type __n2, value_type __c);
1095 basic_string& replace(const_iterator __i1, const_iterator __i2, const basic_string& __str);
1097 …basic_string& replace(const_iterator __i1, const_iterator __i2, __self_view __sv) { return replace…
1099 …basic_string& replace(const_iterator __i1, const_iterator __i2, const value_type* __s, size_type _…
1101 basic_string& replace(const_iterator __i1, const_iterator __i2, const value_type* __s);
1103 basic_string& replace(const_iterator __i1, const_iterator __i2, size_type __n, value_type __c);
1109 basic_string&
1114 … basic_string& replace(const_iterator __i1, const_iterator __i2, initializer_list<value_type> __il)
1120 basic_string substr(size_type __pos = 0, size_type __n = npos) const;
1123 void swap(basic_string& __str)
1144 size_type find(const basic_string& __str, size_type __pos = 0) const _NOEXCEPT;
1153 size_type rfind(const basic_string& __str, size_type __pos = npos) const _NOEXCEPT;
1162 size_type find_first_of(const basic_string& __str, size_type __pos = 0) const _NOEXCEPT;
1172 size_type find_last_of(const basic_string& __str, size_type __pos = npos) const _NOEXCEPT;
1182 size_type find_first_not_of(const basic_string& __str, size_type __pos = 0) const _NOEXCEPT;
1192 size_type find_last_not_of(const basic_string& __str, size_type __pos = npos) const _NOEXCEPT;
1202 int compare(const basic_string& __str) const _NOEXCEPT;
1208 int compare(size_type __pos1, size_type __n1, const basic_string& __str) const;
1209 …int compare(size_type __pos1, size_type __n1, const basic_string& __str, size_type __pos2, size_ty…
1376 void __copy_assign_alloc(const basic_string& __str)
1381 void __copy_assign_alloc(const basic_string& __str, true_type)
1408 void __copy_assign_alloc(const basic_string&, false_type) _NOEXCEPT
1413 void __move_assign(basic_string& __str, false_type)
1416 void __move_assign(basic_string& __str, true_type)
1426 __move_assign_alloc(basic_string& __str)
1434 void __move_assign_alloc(basic_string& __c, true_type)
1441 void __move_assign_alloc(basic_string&, false_type)
1448 friend basic_string operator+<>(const basic_string&, const basic_string&);
1449 friend basic_string operator+<>(const value_type*, const basic_string&);
1450 friend basic_string operator+<>(value_type, const basic_string&);
1451 friend basic_string operator+<>(const basic_string&, const value_type*);
1452 friend basic_string operator+<>(const basic_string&, value_type);
1458 basic_string<_CharT, _Traits, _Allocator>::__invalidate_all_iterators()
1468 basic_string<_CharT, _Traits, _Allocator>::__invalidate_iterators_past(size_type
1497 basic_string<_CharT, _Traits, _Allocator>::basic_string()
1508 basic_string<_CharT, _Traits, _Allocator>::basic_string(const allocator_type& __a)
1523 void basic_string<_CharT, _Traits, _Allocator>::__init(const value_type* __s,
1549 basic_string<_CharT, _Traits, _Allocator>::__init(const value_type* __s, size_type __sz)
1573 basic_string<_CharT, _Traits, _Allocator>::basic_string(const _CharT* __s)
1575 _LIBCPP_ASSERT(__s != nullptr, "basic_string(const char*) detected nullptr");
1584 basic_string<_CharT, _Traits, _Allocator>::basic_string(const _CharT* __s, const _Allocator& __a)
1587 _LIBCPP_ASSERT(__s != nullptr, "basic_string(const char*, allocator) detected nullptr");
1596 basic_string<_CharT, _Traits, _Allocator>::basic_string(const _CharT* __s, size_type __n)
1598 _LIBCPP_ASSERT(__n == 0 || __s != nullptr, "basic_string(const char*, n) detected nullptr");
1607 basic_string<_CharT, _Traits, _Allocator>::basic_string(const _CharT* __s, size_type __n, const _Al…
1610 …_LIBCPP_ASSERT(__n == 0 || __s != nullptr, "basic_string(const char*, n, allocator) detected nullp…
1618 basic_string<_CharT, _Traits, _Allocator>::basic_string(const basic_string& __str)
1631 basic_string<_CharT, _Traits, _Allocator>::basic_string(
1632 const basic_string& __str, const allocator_type& __a)
1648 basic_string<_CharT, _Traits, _Allocator>::basic_string(basic_string&& __str)
1666 basic_string<_CharT, _Traits, _Allocator>::basic_string(basic_string&& __str, const allocator_type&…
1687 basic_string<_CharT, _Traits, _Allocator>::__init(size_type __n, value_type __c)
1711 basic_string<_CharT, _Traits, _Allocator>::basic_string(size_type __n, _CharT __c)
1721 basic_string<_CharT, _Traits, _Allocator>::basic_string(size_type __n, _CharT __c, const _Allocator…
1731 basic_string<_CharT, _Traits, _Allocator>::basic_string(const basic_string& __str,
1747 basic_string<_CharT, _Traits, _Allocator>::basic_string(const basic_string& __str, size_type __pos,
1762 basic_string<_CharT, _Traits, _Allocator>::basic_string(
1776 basic_string<_CharT, _Traits, _Allocator>::basic_string(__self_view __sv)
1786 basic_string<_CharT, _Traits, _Allocator>::basic_string(__self_view __sv, const _Allocator& __a)
1802 basic_string<_CharT, _Traits, _Allocator>::__init(_InputIterator __first, _InputIterator __last)
1829 basic_string<_CharT, _Traits, _Allocator>::__init(_ForwardIterator __first, _ForwardIterator __last)
1856 basic_string<_CharT, _Traits, _Allocator>::basic_string(_InputIterator __first, _InputIterator __la…
1867 basic_string<_CharT, _Traits, _Allocator>::basic_string(_InputIterator __first, _InputIterator __la…
1881 basic_string<_CharT, _Traits, _Allocator>::basic_string(
1892 basic_string<_CharT, _Traits, _Allocator>::basic_string(
1906 basic_string<_CharT, _Traits, _Allocator>::~basic_string()
1917 basic_string<_CharT, _Traits, _Allocator>::__grow_by_and_replace
1950 basic_string<_CharT, _Traits, _Allocator>::__grow_by(size_type __old_cap, size_type __delta_cap, si…
1979 basic_string<_CharT, _Traits, _Allocator>&
1980 basic_string<_CharT, _Traits, _Allocator>::assign(const value_type* __s, size_type __n)
2001 basic_string<_CharT, _Traits, _Allocator>&
2002 basic_string<_CharT, _Traits, _Allocator>::assign(size_type __n, value_type __c)
2020 basic_string<_CharT, _Traits, _Allocator>&
2021 basic_string<_CharT, _Traits, _Allocator>::operator=(value_type __c)
2041 basic_string<_CharT, _Traits, _Allocator>&
2042 basic_string<_CharT, _Traits, _Allocator>::operator=(const basic_string& __str)
2057 basic_string<_CharT, _Traits, _Allocator>::__move_assign(basic_string& __str, false_type)
2069 basic_string<_CharT, _Traits, _Allocator>::__move_assign(basic_string& __str, true_type)
2085 basic_string<_CharT, _Traits, _Allocator>&
2086 basic_string<_CharT, _Traits, _Allocator>::operator=(basic_string&& __str)
2102 basic_string<_CharT, _Traits, _Allocator>&
2104 basic_string<_CharT, _Traits, _Allocator>::assign(_InputIterator __first, _InputIterator __last)
2106 const basic_string __temp(__first, __last, __alloc());
2117 basic_string<_CharT, _Traits, _Allocator>&
2119 basic_string<_CharT, _Traits, _Allocator>::assign(_ForwardIterator __first, _ForwardIterator __last)
2139 basic_string<_CharT, _Traits, _Allocator>&
2140 basic_string<_CharT, _Traits, _Allocator>::assign(const basic_string& __str, size_type __pos, size_…
2153 basic_string<_CharT, _Traits, _Allocator>&
2155 basic_string<_CharT, _Traits, _Allocator>::assign(const _Tp & __t, size_type __pos, size_type __n)
2166 basic_string<_CharT, _Traits, _Allocator>&
2167 basic_string<_CharT, _Traits, _Allocator>::assign(const value_type* __s)
2176 basic_string<_CharT, _Traits, _Allocator>&
2177 basic_string<_CharT, _Traits, _Allocator>::append(const value_type* __s, size_type __n)
2199 basic_string<_CharT, _Traits, _Allocator>&
2200 basic_string<_CharT, _Traits, _Allocator>::append(size_type __n, value_type __c)
2219 basic_string<_CharT, _Traits, _Allocator>::push_back(value_type __c)
2268 basic_string<_CharT, _Traits, _Allocator>&
2269 basic_string<_CharT, _Traits, _Allocator>::__append_forward_unsafe(
2281 const basic_string __temp (__first, __last, __alloc());
2300 basic_string<_CharT, _Traits, _Allocator>&
2301 basic_string<_CharT, _Traits, _Allocator>::append(const basic_string& __str)
2307 basic_string<_CharT, _Traits, _Allocator>&
2308 basic_string<_CharT, _Traits, _Allocator>::append(const basic_string& __str, size_type __pos, size_…
2321 basic_string<_CharT, _Traits, _Allocator>&
2323 basic_string<_CharT, _Traits, _Allocator>::append(const _Tp & __t, size_type __pos, size_type __n)
2333 basic_string<_CharT, _Traits, _Allocator>&
2334 basic_string<_CharT, _Traits, _Allocator>::append(const value_type* __s)
2343 basic_string<_CharT, _Traits, _Allocator>&
2344 basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos, const value_type* __s, size_type…
2375 basic_string<_CharT, _Traits, _Allocator>&
2376 basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos, size_type __n, value_type __c)
2411 typename basic_string<_CharT, _Traits, _Allocator>::iterator
2413 basic_string<_CharT, _Traits, _Allocator>::insert(const_iterator __pos, _InputIterator __first, _In…
2420 const basic_string __temp(__first, __last, __alloc());
2430 typename basic_string<_CharT, _Traits, _Allocator>::iterator
2432 basic_string<_CharT, _Traits, _Allocator>::insert(const_iterator __pos, _ForwardIterator __first, _…
2445 const basic_string __temp(__first, __last, __alloc());
2475 basic_string<_CharT, _Traits, _Allocator>&
2476 basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos1, const basic_string& __str)
2482 basic_string<_CharT, _Traits, _Allocator>&
2483 basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos1, const basic_string& __str,
2497 basic_string<_CharT, _Traits, _Allocator>&
2499 basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos1, const _Tp& __t,
2510 basic_string<_CharT, _Traits, _Allocator>&
2511 basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos, const value_type* __s)
2518 typename basic_string<_CharT, _Traits, _Allocator>::iterator
2519 basic_string<_CharT, _Traits, _Allocator>::insert(const_iterator __pos, value_type __c)
2545 typename basic_string<_CharT, _Traits, _Allocator>::iterator
2546 basic_string<_CharT, _Traits, _Allocator>::insert(const_iterator __pos, size_type __n, value_type _…
2561 basic_string<_CharT, _Traits, _Allocator>&
2562 basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos, size_type __n1, const value_typ…
2616 basic_string<_CharT, _Traits, _Allocator>&
2617 basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos, size_type __n1, size_type __n2,…
2654 basic_string<_CharT, _Traits, _Allocator>&
2656 basic_string<_CharT, _Traits, _Allocator>::replace(const_iterator __i1, const_iterator __i2,
2659 const basic_string __temp(__j1, __j2, __alloc());
2665 basic_string<_CharT, _Traits, _Allocator>&
2666 basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos1, size_type __n1, const basic_st…
2672 basic_string<_CharT, _Traits, _Allocator>&
2673 basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos1, size_type __n1, const basic_st…
2687 basic_string<_CharT, _Traits, _Allocator>&
2689 basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos1, size_type __n1, const _Tp& __t,
2700 basic_string<_CharT, _Traits, _Allocator>&
2701 basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos, size_type __n1, const value_typ…
2709 basic_string<_CharT, _Traits, _Allocator>&
2710 basic_string<_CharT, _Traits, _Allocator>::replace(const_iterator __i1, const_iterator __i2, const …
2718 basic_string<_CharT, _Traits, _Allocator>&
2719 basic_string<_CharT, _Traits, _Allocator>::replace(const_iterator __i1, const_iterator __i2, const …
2726 basic_string<_CharT, _Traits, _Allocator>&
2727 basic_string<_CharT, _Traits, _Allocator>::replace(const_iterator __i1, const_iterator __i2, const …
2734 basic_string<_CharT, _Traits, _Allocator>&
2735 basic_string<_CharT, _Traits, _Allocator>::replace(const_iterator __i1, const_iterator __i2, size_t…
2743 basic_string<_CharT, _Traits, _Allocator>&
2744 basic_string<_CharT, _Traits, _Allocator>::erase(size_type __pos, size_type __n)
2766 typename basic_string<_CharT, _Traits, _Allocator>::iterator
2767 basic_string<_CharT, _Traits, _Allocator>::erase(const_iterator __pos)
2784 typename basic_string<_CharT, _Traits, _Allocator>::iterator
2785 basic_string<_CharT, _Traits, _Allocator>::erase(const_iterator __first, const_iterator __last)
2802 basic_string<_CharT, _Traits, _Allocator>::pop_back()
2824 basic_string<_CharT, _Traits, _Allocator>::clear() _NOEXCEPT
2842 basic_string<_CharT, _Traits, _Allocator>::__erase_to_end(size_type __pos)
2859 basic_string<_CharT, _Traits, _Allocator>::resize(size_type __n, value_type __c)
2870 typename basic_string<_CharT, _Traits, _Allocator>::size_type
2871 basic_string<_CharT, _Traits, _Allocator>::max_size() const _NOEXCEPT
2883 basic_string<_CharT, _Traits, _Allocator>::reserve(size_type __res_arg)
2946 typename basic_string<_CharT, _Traits, _Allocator>::const_reference
2947 basic_string<_CharT, _Traits, _Allocator>::operator[](size_type __pos) const _NOEXCEPT
2955 typename basic_string<_CharT, _Traits, _Allocator>::reference
2956 basic_string<_CharT, _Traits, _Allocator>::operator[](size_type __pos) _NOEXCEPT
2963 typename basic_string<_CharT, _Traits, _Allocator>::const_reference
2964 basic_string<_CharT, _Traits, _Allocator>::at(size_type __n) const
2972 typename basic_string<_CharT, _Traits, _Allocator>::reference
2973 basic_string<_CharT, _Traits, _Allocator>::at(size_type __n)
2982 typename basic_string<_CharT, _Traits, _Allocator>::reference
2983 basic_string<_CharT, _Traits, _Allocator>::front()
2991 typename basic_string<_CharT, _Traits, _Allocator>::const_reference
2992 basic_string<_CharT, _Traits, _Allocator>::front() const
3000 typename basic_string<_CharT, _Traits, _Allocator>::reference
3001 basic_string<_CharT, _Traits, _Allocator>::back()
3009 typename basic_string<_CharT, _Traits, _Allocator>::const_reference
3010 basic_string<_CharT, _Traits, _Allocator>::back() const
3017 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3018 basic_string<_CharT, _Traits, _Allocator>::copy(value_type* __s, size_type __n, size_type __pos) co…
3030 basic_string<_CharT, _Traits, _Allocator>
3031 basic_string<_CharT, _Traits, _Allocator>::substr(size_type __pos, size_type __n) const
3033 return basic_string(*this, __pos, __n, __alloc());
3039 basic_string<_CharT, _Traits, _Allocator>::swap(basic_string& __str)
3074 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3075 basic_string<_CharT, _Traits, _Allocator>::find(const value_type* __s,
3086 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3087 basic_string<_CharT, _Traits, _Allocator>::find(const basic_string& __str,
3096 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3097 basic_string<_CharT, _Traits, _Allocator>::find(__self_view __sv,
3106 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3107 basic_string<_CharT, _Traits, _Allocator>::find(const value_type* __s,
3116 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3117 basic_string<_CharT, _Traits, _Allocator>::find(value_type __c,
3127 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3128 basic_string<_CharT, _Traits, _Allocator>::rfind(const value_type* __s,
3139 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3140 basic_string<_CharT, _Traits, _Allocator>::rfind(const basic_string& __str,
3149 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3150 basic_string<_CharT, _Traits, _Allocator>::rfind(__self_view __sv,
3159 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3160 basic_string<_CharT, _Traits, _Allocator>::rfind(const value_type* __s,
3169 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3170 basic_string<_CharT, _Traits, _Allocator>::rfind(value_type __c,
3180 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3181 basic_string<_CharT, _Traits, _Allocator>::find_first_of(const value_type* __s,
3192 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3193 basic_string<_CharT, _Traits, _Allocator>::find_first_of(const basic_string& __str,
3202 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3203 basic_string<_CharT, _Traits, _Allocator>::find_first_of(__self_view __sv,
3212 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3213 basic_string<_CharT, _Traits, _Allocator>::find_first_of(const value_type* __s,
3223 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3224 basic_string<_CharT, _Traits, _Allocator>::find_first_of(value_type __c,
3233 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3234 basic_string<_CharT, _Traits, _Allocator>::find_last_of(const value_type* __s,
3245 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3246 basic_string<_CharT, _Traits, _Allocator>::find_last_of(const basic_string& __str,
3255 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3256 basic_string<_CharT, _Traits, _Allocator>::find_last_of(__self_view __sv,
3265 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3266 basic_string<_CharT, _Traits, _Allocator>::find_last_of(const value_type* __s,
3276 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3277 basic_string<_CharT, _Traits, _Allocator>::find_last_of(value_type __c,
3286 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3287 basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(const value_type* __s,
3298 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3299 basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(const basic_string& __str,
3308 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3309 basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(__self_view __sv,
3318 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3319 basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(const value_type* __s,
3329 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3330 basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(value_type __c,
3340 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3341 basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(const value_type* __s,
3352 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3353 basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(const basic_string& __str,
3362 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3363 basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(__self_view __sv,
3372 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3373 basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(const value_type* __s,
3383 typename basic_string<_CharT, _Traits, _Allocator>::size_type
3384 basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(value_type __c,
3396 basic_string<_CharT, _Traits, _Allocator>::compare(__self_view __sv) const _NOEXCEPT
3414 basic_string<_CharT, _Traits, _Allocator>::compare(const basic_string& __str) const _NOEXCEPT
3421 basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1,
3445 basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1,
3455 basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1,
3457 const basic_string& __str) const
3469 basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1,
3481 basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1,
3483 const basic_string& __str,
3492 basic_string<_CharT, _Traits, _Allocator>::compare(const value_type* __s) const _NOEXCEPT
3500 basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1,
3513 basic_string<_CharT, _Traits, _Allocator>::__invariants() const
3531 operator==(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3532 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3543 operator==(const basic_string<char, char_traits<char>, _Allocator>& __lhs,
3544 const basic_string<char, char_traits<char>, _Allocator>& __rhs) _NOEXCEPT
3563 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3565 typedef basic_string<_CharT, _Traits, _Allocator> _String;
3566 _LIBCPP_ASSERT(__lhs != nullptr, "operator==(char*, basic_string): received nullptr");
3575 operator==(const basic_string<_CharT,_Traits,_Allocator>& __lhs,
3578 typedef basic_string<_CharT, _Traits, _Allocator> _String;
3579 _LIBCPP_ASSERT(__rhs != nullptr, "operator==(basic_string, char*): received nullptr");
3588 operator!=(const basic_string<_CharT,_Traits,_Allocator>& __lhs,
3589 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3598 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3606 operator!=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3617 operator< (const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3618 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3626 operator< (const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3636 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3646 operator> (const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3647 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3655 operator> (const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3665 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3675 operator<=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3676 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3684 operator<=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3694 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3704 operator>=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3705 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3713 operator>=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3723 const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT
3731 basic_string<_CharT, _Traits, _Allocator>
3732 operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3733 const basic_string<_CharT, _Traits, _Allocator>& __rhs)
3735 basic_string<_CharT, _Traits, _Allocator> __r(__lhs.get_allocator());
3736 typename basic_string<_CharT, _Traits, _Allocator>::size_type __lhs_sz = __lhs.size();
3737 typename basic_string<_CharT, _Traits, _Allocator>::size_type __rhs_sz = __rhs.size();
3744 basic_string<_CharT, _Traits, _Allocator>
3745 operator+(const _CharT* __lhs , const basic_string<_CharT,_Traits,_Allocator>& __rhs)
3747 basic_string<_CharT, _Traits, _Allocator> __r(__rhs.get_allocator());
3748 typename basic_string<_CharT, _Traits, _Allocator>::size_type __lhs_sz = _Traits::length(__lhs);
3749 typename basic_string<_CharT, _Traits, _Allocator>::size_type __rhs_sz = __rhs.size();
3756 basic_string<_CharT, _Traits, _Allocator>
3757 operator+(_CharT __lhs, const basic_string<_CharT,_Traits,_Allocator>& __rhs)
3759 basic_string<_CharT, _Traits, _Allocator> __r(__rhs.get_allocator());
3760 typename basic_string<_CharT, _Traits, _Allocator>::size_type __rhs_sz = __rhs.size();
3767 basic_string<_CharT, _Traits, _Allocator>
3768 operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs)
3770 basic_string<_CharT, _Traits, _Allocator> __r(__lhs.get_allocator());
3771 typename basic_string<_CharT, _Traits, _Allocator>::size_type __lhs_sz = __lhs.size();
3772 typename basic_string<_CharT, _Traits, _Allocator>::size_type __rhs_sz = _Traits::length(__rhs);
3779 basic_string<_CharT, _Traits, _Allocator>
3780 operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs, _CharT __rhs)
3782 basic_string<_CharT, _Traits, _Allocator> __r(__lhs.get_allocator());
3783 typename basic_string<_CharT, _Traits, _Allocator>::size_type __lhs_sz = __lhs.size();
3793 basic_string<_CharT, _Traits, _Allocator>
3794 operator+(basic_string<_CharT, _Traits, _Allocator>&& __lhs, const basic_string<_CharT, _Traits, _A…
3801 basic_string<_CharT, _Traits, _Allocator>
3802 operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs, basic_string<_CharT, _Traits, _Al…
3809 basic_string<_CharT, _Traits, _Allocator>
3810 operator+(basic_string<_CharT, _Traits, _Allocator>&& __lhs, basic_string<_CharT, _Traits, _Allocat…
3817 basic_string<_CharT, _Traits, _Allocator>
3818 operator+(const _CharT* __lhs , basic_string<_CharT,_Traits,_Allocator>&& __rhs)
3825 basic_string<_CharT, _Traits, _Allocator>
3826 operator+(_CharT __lhs, basic_string<_CharT,_Traits,_Allocator>&& __rhs)
3834 basic_string<_CharT, _Traits, _Allocator>
3835 operator+(basic_string<_CharT, _Traits, _Allocator>&& __lhs, const _CharT* __rhs)
3842 basic_string<_CharT, _Traits, _Allocator>
3843 operator+(basic_string<_CharT, _Traits, _Allocator>&& __lhs, _CharT __rhs)
3856 swap(basic_string<_CharT, _Traits, _Allocator>& __lhs,
3857 basic_string<_CharT, _Traits, _Allocator>& __rhs)
3865 typedef basic_string<char16_t> u16string;
3866 typedef basic_string<char32_t> u32string;
3911 const typename basic_string<_CharT, _Traits, _Allocator>::size_type
3912 basic_string<_CharT, _Traits, _Allocator>::npos;
3915 struct _LIBCPP_TEMPLATE_VIS hash<basic_string<_CharT, _Traits, _Allocator> >
3916 : public unary_function<basic_string<_CharT, _Traits, _Allocator>, size_t>
3919 operator()(const basic_string<_CharT, _Traits, _Allocator>& __val) const _NOEXCEPT;
3924 hash<basic_string<_CharT, _Traits, _Allocator> >::operator()(
3925 const basic_string<_CharT, _Traits, _Allocator>& __val) const _NOEXCEPT
3933 const basic_string<_CharT, _Traits, _Allocator>& __str);
3938 basic_string<_CharT, _Traits, _Allocator>& __str);
3943 basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm);
3949 basic_string<_CharT, _Traits, _Allocator>& __str);
3957 basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm);
3963 basic_string<_CharT, _Traits, _Allocator>& __str);
3971 basic_string<_CharT, _Traits, _Allocator>::__dereferenceable(const const_iterator* __i) const
3979 basic_string<_CharT, _Traits, _Allocator>::__decrementable(const const_iterator* __i) const
3987 basic_string<_CharT, _Traits, _Allocator>::__addable(const const_iterator* __i, ptrdiff_t __n) const
3995 basic_string<_CharT, _Traits, _Allocator>::__subscriptable(const const_iterator* __i, ptrdiff_t __n…
4004 // Literal suffixes for basic_string [basic.string.literals]
4010 basic_string<char> operator "" s( const char *__str, size_t __len )
4012 return basic_string<char> (__str, __len);
4016 basic_string<wchar_t> operator "" s( const wchar_t *__str, size_t __len )
4018 return basic_string<wchar_t> (__str, __len);
4022 basic_string<char16_t> operator "" s( const char16_t *__str, size_t __len )
4024 return basic_string<char16_t> (__str, __len);
4028 basic_string<char32_t> operator "" s( const char32_t *__str, size_t __len )
4030 return basic_string<char32_t> (__str, __len);
4036 _LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS basic_string<char>)
4037 _LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS basic_string<wchar_t>)