Lines Matching refs:basic_string_view

23     // 7.2, Class template basic_string_view
25 class basic_string_view;
28 inline constexpr bool ranges::enable_view<basic_string_view<charT, traits>> = true;
31 …inline constexpr bool ranges::enable_borrowed_range<basic_string_view<charT, traits>> = true; // …
33 // 7.9, basic_string_view non-member comparison functions
35 constexpr bool operator==(basic_string_view<charT, traits> x,
36 basic_string_view<charT, traits> y) noexcept;
38 constexpr bool operator!=(basic_string_view<charT, traits> x,
39 basic_string_view<charT, traits> y) noexcept;
41 constexpr bool operator< (basic_string_view<charT, traits> x,
42 basic_string_view<charT, traits> y) noexcept;
44 constexpr bool operator> (basic_string_view<charT, traits> x,
45 basic_string_view<charT, traits> y) noexcept;
47 constexpr bool operator<=(basic_string_view<charT, traits> x,
48 basic_string_view<charT, traits> y) noexcept;
50 constexpr bool operator>=(basic_string_view<charT, traits> x,
51 basic_string_view<charT, traits> y) noexcept;
53 constexpr see below operator<=>(basic_string_view<charT, traits> x,
54 basic_string_view<charT, traits> y) noexcept;
62 basic_string_view<charT, traits> str);
64 // basic_string_view typedef names
65 typedef basic_string_view<char> string_view;
66 typedef basic_string_view<char8_t> u8string_view; // C++20
67 typedef basic_string_view<char16_t> u16string_view;
68 typedef basic_string_view<char32_t> u32string_view;
69 typedef basic_string_view<wchar_t> wstring_view;
72 class basic_string_view {
89 // 7.3, basic_string_view constructors and assignment operators
90 constexpr basic_string_view() noexcept;
91 constexpr basic_string_view(const basic_string_view&) noexcept = default;
92 basic_string_view& operator=(const basic_string_view&) noexcept = default;
94 constexpr basic_string_view(const charT* str);
95 basic_string_view(nullptr_t) = delete; // C++23
96 constexpr basic_string_view(const charT* str, size_type len);
98 constexpr basic_string_view(It begin, End end); // C++20
100 constexpr basic_string_view(Range&& r); // C++23
102 // 7.4, basic_string_view iterator support
112 // 7.5, basic_string_view capacity
118 // 7.6, basic_string_view element access
125 // 7.7, basic_string_view modifiers
128 constexpr void swap(basic_string_view& s) noexcept;
132 constexpr basic_string_view substr(size_type pos = 0, size_type n = npos) const;
133 constexpr int compare(basic_string_view s) const noexcept;
134 constexpr int compare(size_type pos1, size_type n1, basic_string_view s) const;
136 basic_string_view s, size_type pos2, size_type n2) const;
141 constexpr size_type find(basic_string_view s, size_type pos = 0) const noexcept;
145 constexpr size_type rfind(basic_string_view s, size_type pos = npos) const noexcept;
149 constexpr size_type find_first_of(basic_string_view s, size_type pos = 0) const noexcept;
153 constexpr size_type find_last_of(basic_string_view s, size_type pos = npos) const noexcept;
157 constexpr size_type find_first_not_of(basic_string_view s, size_type pos = 0) const noexcept;
161 … constexpr size_type find_last_not_of(basic_string_view s, size_type pos = npos) const noexcept;
166 constexpr bool starts_with(basic_string_view s) const noexcept; // C++20
169 constexpr bool ends_with(basic_string_view s) const noexcept; // C++20
173 constexpr bool contains(basic_string_view s) const noexcept; // C++23
182 // basic_string_view deduction guides
184 basic_string_view(It, End) -> basic_string_view<iter_value_t<It>>; // C++20
186 basic_string_view(Range&&) -> basic_string_view<ranges::range_value_t<Range>>; // C++23
196 constexpr basic_string_view<char> operator""sv(const char *str, size_t len) noexcept;
197 constexpr basic_string_view<wchar_t> operator""sv(const wchar_t *str, size_t len) noexcept;
198 …constexpr basic_string_view<char8_t> operator""sv(const char8_t *str, size_t len) noexcept; // C…
199 constexpr basic_string_view<char16_t> operator""sv(const char16_t *str, size_t len) noexcept;
200 constexpr basic_string_view<char32_t> operator""sv(const char32_t *str, size_t len) noexcept;
272 class basic_string_view {
293 …static_assert((!is_array<value_type>::value), "Character type of basic_string_view must not be an …
294 …static_assert((is_standard_layout<value_type>::value), "Character type of basic_string_view must b…
295 …static_assert((is_trivial<value_type>::value), "Character type of basic_string_view must be trivia…
300 …_LIBCPP_CONSTEXPR _LIBCPP_HIDE_FROM_ABI basic_string_view() _NOEXCEPT : __data_(nullptr), __size_(…
302 _LIBCPP_HIDE_FROM_ABI basic_string_view(const basic_string_view&) _NOEXCEPT = default;
304 _LIBCPP_HIDE_FROM_ABI basic_string_view& operator=(const basic_string_view&) _NOEXCEPT = default;
306 …_LIBCPP_CONSTEXPR _LIBCPP_HIDE_FROM_ABI basic_string_view(const _CharT* __s, size_type __len) _NOE…
323 constexpr _LIBCPP_HIDE_FROM_ABI basic_string_view(_It __begin, _End __end)
332 …requires(!is_same_v<remove_cvref_t<_Range>, basic_string_view> && ranges::contiguous_range<_Range>…
335 …(!requires(remove_cvref_t<_Range>& __d) { __d.operator std::basic_string_view<_CharT, _Traits>(); …
336 constexpr explicit _LIBCPP_HIDE_FROM_ABI basic_string_view(_Range&& __r)
340 _LIBCPP_CONSTEXPR _LIBCPP_HIDE_FROM_ABI basic_string_view(const _CharT* __s)
344 basic_string_view(nullptr_t) = delete;
428 …_LIBCPP_CONSTEXPR_SINCE_CXX14 _LIBCPP_HIDE_FROM_ABI void swap(basic_string_view& __other) _NOEXCEP…
447 …_LIBCPP_CONSTEXPR _LIBCPP_HIDE_FROM_ABI basic_string_view substr(size_type __pos = 0, size_type __…
448 return __pos > size() ? (__throw_out_of_range("string_view::substr"), basic_string_view())
449 : basic_string_view(data() + __pos, std::min(__n, size() - __pos));
452 _LIBCPP_CONSTEXPR_SINCE_CXX14 int compare(basic_string_view __sv) const _NOEXCEPT {
461 compare(size_type __pos1, size_type __n1, basic_string_view __sv) const {
466 …compare(size_type __pos1, size_type __n1, basic_string_view __sv, size_type __pos2, size_type __n2…
471 return compare(basic_string_view(__s));
476 return substr(__pos1, __n1).compare(basic_string_view(__s));
481 return substr(__pos1, __n1).compare(basic_string_view(__s, __n2));
486 find(basic_string_view __s, size_type __pos = 0) const _NOEXCEPT {
510 rfind(basic_string_view __s, size_type __pos = npos) const _NOEXCEPT {
535 find_first_of(basic_string_view __s, size_type __pos = 0) const _NOEXCEPT {
561 find_last_of(basic_string_view __s, size_type __pos = npos) const _NOEXCEPT {
587 find_first_not_of(basic_string_view __s, size_type __pos = 0) const _NOEXCEPT {
614 find_last_not_of(basic_string_view __s, size_type __pos = npos) const _NOEXCEPT {
640 constexpr _LIBCPP_HIDE_FROM_ABI bool starts_with(basic_string_view __s) const noexcept {
649 return starts_with(basic_string_view(__s));
652 constexpr _LIBCPP_HIDE_FROM_ABI bool ends_with(basic_string_view __s) const noexcept {
661 return ends_with(basic_string_view(__s));
666 …constexpr _LIBCPP_HIDE_FROM_ABI bool contains(basic_string_view __sv) const noexcept { return find…
677 _LIBCPP_CTAD_SUPPORTED_FOR_TYPE(basic_string_view);
681 inline constexpr bool ranges::enable_view<basic_string_view<_CharT, _Traits>> = true;
684 inline constexpr bool ranges::enable_borrowed_range<basic_string_view<_CharT, _Traits> > = true;
691 basic_string_view(_It, _End) -> basic_string_view<iter_value_t<_It>>;
696 basic_string_view(_Range) -> basic_string_view<ranges::range_value_t<_Range>>;
704 _LIBCPP_HIDE_FROM_ABI constexpr bool operator==(basic_string_view<_CharT, _Traits> __lhs,
705 … type_identity_t<basic_string_view<_CharT, _Traits>> __rhs) noexcept {
712 _LIBCPP_HIDE_FROM_ABI constexpr auto operator<=>(basic_string_view<_CharT, _Traits> __lhs,
713 … type_identity_t<basic_string_view<_CharT, _Traits>> __rhs) noexcept {
730 operator==(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOE…
740 operator==(basic_string_view<_CharT, _Traits> __lhs,
741 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT {
749 operator==(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
750 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT {
759 operator!=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOE…
767 operator!=(basic_string_view<_CharT, _Traits> __lhs,
768 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT {
776 operator!=(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
777 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT {
786 operator<(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOEX…
792 operator<(basic_string_view<_CharT, _Traits> __lhs,
793 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT {
799 operator<(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
800 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT {
807 operator>(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOEX…
813 operator>(basic_string_view<_CharT, _Traits> __lhs,
814 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT {
820 operator>(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
821 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT {
828 operator<=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOE…
834 operator<=(basic_string_view<_CharT, _Traits> __lhs,
835 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT {
841 operator<=(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
842 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT {
849 operator>=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOE…
855 operator>=(basic_string_view<_CharT, _Traits> __lhs,
856 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT {
862 operator>=(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
863 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT {
871 operator<<(basic_ostream<_CharT, _Traits>& __os, basic_string_view<_CharT, _Traits> __str);
875 struct __string_view_hash : public __unary_function<basic_string_view<_CharT, char_traits<_CharT> >…
876 …_LIBCPP_HIDE_FROM_ABI size_t operator()(const basic_string_view<_CharT, char_traits<_CharT> > __va…
882 struct hash<basic_string_view<char, char_traits<char> > > : __string_view_hash<char> {};
886 struct hash<basic_string_view<char8_t, char_traits<char8_t> > > : __string_view_hash<char8_t> {};
890 struct hash<basic_string_view<char16_t, char_traits<char16_t> > > : __string_view_hash<char16_t> {};
893 struct hash<basic_string_view<char32_t, char_traits<char32_t> > > : __string_view_hash<char32_t> {};
897 struct hash<basic_string_view<wchar_t, char_traits<wchar_t> > > : __string_view_hash<wchar_t> {};
903 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR basic_string_view<char>
905 return basic_string_view<char>(__str, __len);
909 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR basic_string_view<wchar_t>
911 return basic_string_view<wchar_t>(__str, __len);
916 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR basic_string_view<char8_t>
918 return basic_string_view<char8_t>(__str, __len);
922 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR basic_string_view<char16_t>
924 return basic_string_view<char16_t>(__str, __len);
927 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR basic_string_view<char32_t>
929 return basic_string_view<char32_t>(__str, __len);