Lines Matching refs:basic_string_view
21 // 7.2, Class template basic_string_view
23 class basic_string_view;
26 inline constexpr bool ranges::enable_view<basic_string_view<charT, traits>> = true;
29 …inline constexpr bool ranges::enable_borrowed_range<basic_string_view<charT, traits>> = true; // …
31 // 7.9, basic_string_view non-member comparison functions
33 constexpr bool operator==(basic_string_view<charT, traits> x,
34 basic_string_view<charT, traits> y) noexcept;
36 constexpr bool operator!=(basic_string_view<charT, traits> x,
37 basic_string_view<charT, traits> y) noexcept;
39 constexpr bool operator< (basic_string_view<charT, traits> x,
40 basic_string_view<charT, traits> y) noexcept;
42 constexpr bool operator> (basic_string_view<charT, traits> x,
43 basic_string_view<charT, traits> y) noexcept;
45 constexpr bool operator<=(basic_string_view<charT, traits> x,
46 basic_string_view<charT, traits> y) noexcept;
48 constexpr bool operator>=(basic_string_view<charT, traits> x,
49 basic_string_view<charT, traits> y) noexcept;
51 constexpr see below operator<=>(basic_string_view<charT, traits> x,
52 basic_string_view<charT, traits> y) noexcept;
60 basic_string_view<charT, traits> str);
62 // basic_string_view typedef names
63 typedef basic_string_view<char> string_view;
64 typedef basic_string_view<char8_t> u8string_view; // C++20
65 typedef basic_string_view<char16_t> u16string_view;
66 typedef basic_string_view<char32_t> u32string_view;
67 typedef basic_string_view<wchar_t> wstring_view;
70 class basic_string_view {
87 // 7.3, basic_string_view constructors and assignment operators
88 constexpr basic_string_view() noexcept;
89 constexpr basic_string_view(const basic_string_view&) noexcept = default;
90 basic_string_view& operator=(const basic_string_view&) noexcept = default;
92 constexpr basic_string_view(const charT* str);
93 basic_string_view(nullptr_t) = delete; // C++2b
94 constexpr basic_string_view(const charT* str, size_type len);
96 constexpr basic_string_view(It begin, End end); // C++20
98 constexpr basic_string_view(Range&& r); // C++23
100 // 7.4, basic_string_view iterator support
110 // 7.5, basic_string_view capacity
116 // 7.6, basic_string_view element access
123 // 7.7, basic_string_view modifiers
126 constexpr void swap(basic_string_view& s) noexcept;
130 constexpr basic_string_view substr(size_type pos = 0, size_type n = npos) const;
131 constexpr int compare(basic_string_view s) const noexcept;
132 constexpr int compare(size_type pos1, size_type n1, basic_string_view s) const;
134 basic_string_view s, size_type pos2, size_type n2) const;
139 constexpr size_type find(basic_string_view s, size_type pos = 0) const noexcept;
143 constexpr size_type rfind(basic_string_view s, size_type pos = npos) const noexcept;
147 constexpr size_type find_first_of(basic_string_view s, size_type pos = 0) const noexcept;
151 constexpr size_type find_last_of(basic_string_view s, size_type pos = npos) const noexcept;
155 constexpr size_type find_first_not_of(basic_string_view s, size_type pos = 0) const noexcept;
159 … constexpr size_type find_last_not_of(basic_string_view s, size_type pos = npos) const noexcept;
164 constexpr bool starts_with(basic_string_view s) const noexcept; // C++20
167 constexpr bool ends_with(basic_string_view s) const noexcept; // C++20
171 constexpr bool contains(basic_string_view s) const noexcept; // C++2b
180 // basic_string_view deduction guides
182 basic_string_view(It, End) -> basic_string_view<iter_value_t<It>>; // C++20
184 basic_string_view(Range&&) -> basic_string_view<ranges::range_value_t<Range>>; // C++23
194 constexpr basic_string_view<char> operator "" sv(const char *str, size_t len) noexcept;
195 constexpr basic_string_view<wchar_t> operator "" sv(const wchar_t *str, size_t len) noexcept;
196 …constexpr basic_string_view<char8_t> operator "" sv(const char8_t *str, size_t len) noexcept; //…
197 constexpr basic_string_view<char16_t> operator "" sv(const char16_t *str, size_t len) noexcept;
198 constexpr basic_string_view<char32_t> operator "" sv(const char32_t *str, size_t len) noexcept;
259 class basic_string_view {
276 …static_assert((!is_array<value_type>::value), "Character type of basic_string_view must not be an …
277 …static_assert(( is_standard_layout<value_type>::value), "Character type of basic_string_view must …
278 …static_assert(( is_trivial<value_type>::value), "Character type of basic_string_view must be trivi…
284 basic_string_view() _NOEXCEPT : __data_(nullptr), __size_(0) {}
287 basic_string_view(const basic_string_view&) _NOEXCEPT = default;
290 basic_string_view& operator=(const basic_string_view&) _NOEXCEPT = default;
293 basic_string_view(const _CharT* __s, size_type __len) _NOEXCEPT
304 constexpr _LIBCPP_HIDE_FROM_ABI basic_string_view(_It __begin, _End __end)
314 !is_same_v<remove_cvref_t<_Range>, basic_string_view> &&
320 __d.operator _VSTD::basic_string_view<_CharT, _Traits>();
327 basic_string_view(_Range&& __r) : __data_(ranges::data(__r)), __size_(ranges::size(__r)) {}
331 basic_string_view(const _CharT* __s)
335 basic_string_view(nullptr_t) = delete;
422 void swap(basic_string_view& __other) _NOEXCEPT
444 basic_string_view substr(size_type __pos = 0, size_type __n = npos) const
447 ? (__throw_out_of_range("string_view::substr"), basic_string_view())
448 : basic_string_view(data() + __pos, _VSTD::min(__n, size() - __pos));
451 _LIBCPP_CONSTEXPR_SINCE_CXX14 int compare(basic_string_view __sv) const _NOEXCEPT
461 int compare(size_type __pos1, size_type __n1, basic_string_view __sv) const
468 basic_string_view __sv, size_type __pos2, size_type __n2) const
476 return compare(basic_string_view(__s));
482 return substr(__pos1, __n1).compare(basic_string_view(__s));
488 return substr(__pos1, __n1).compare(basic_string_view(__s, __n2));
493 size_type find(basic_string_view __s, size_type __pos = 0) const _NOEXCEPT
525 size_type rfind(basic_string_view __s, size_type __pos = npos) const _NOEXCEPT
557 size_type find_first_of(basic_string_view __s, size_type __pos = 0) const _NOEXCEPT
586 size_type find_last_of(basic_string_view __s, size_type __pos=npos) const _NOEXCEPT
615 size_type find_first_not_of(basic_string_view __s, size_type __pos=0) const _NOEXCEPT
647 size_type find_last_not_of(basic_string_view __s, size_type __pos=npos) const _NOEXCEPT
679 bool starts_with(basic_string_view __s) const noexcept
688 { return starts_with(basic_string_view(__s)); }
691 bool ends_with(basic_string_view __s) const noexcept
700 { return ends_with(basic_string_view(__s)); }
705 bool contains(basic_string_view __sv) const noexcept
721 _LIBCPP_CTAD_SUPPORTED_FOR_TYPE(basic_string_view);
725 inline constexpr bool ranges::enable_view<basic_string_view<_CharT, _Traits>> = true;
728 inline constexpr bool ranges::enable_borrowed_range<basic_string_view<_CharT, _Traits> > = true;
735 basic_string_view(_It, _End) -> basic_string_view<iter_value_t<_It>>;
741 basic_string_view(_Range) -> basic_string_view<ranges::range_value_t<_Range>>;
748 bool operator==(basic_string_view<_CharT, _Traits> __lhs,
749 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
759 bool operator==(basic_string_view<_CharT, _Traits> __lhs,
760 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT
770 bool operator==(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
771 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
784 operator<=>(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) noe…
798 …basic_string_view<_CharT, _Traits> __lhs, type_identity_t<basic_string_view<_CharT, _Traits>> __rh…
815 bool operator!=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs)…
824 bool operator!=(basic_string_view<_CharT, _Traits> __lhs,
825 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT
834 bool operator!=(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
835 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
846 bool operator<(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) …
853 bool operator<(basic_string_view<_CharT, _Traits> __lhs,
854 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT
861 bool operator<(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
862 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
871 bool operator> (basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs)…
878 bool operator>(basic_string_view<_CharT, _Traits> __lhs,
879 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT
886 bool operator>(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
887 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
896 bool operator<=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs)…
903 bool operator<=(basic_string_view<_CharT, _Traits> __lhs,
904 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT
911 bool operator<=(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
912 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
921 bool operator>=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs)…
929 bool operator>=(basic_string_view<_CharT, _Traits> __lhs,
930 __type_identity_t<basic_string_view<_CharT, _Traits> > __rhs) _NOEXCEPT
937 bool operator>=(__type_identity_t<basic_string_view<_CharT, _Traits> > __lhs,
938 basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
948 basic_string_view<_CharT, _Traits> __str);
952 struct __string_view_hash : public __unary_function<basic_string_view<_CharT, char_traits<_CharT> >…
955 size_t operator()(const basic_string_view<_CharT, char_traits<_CharT> > __val) const _NOEXCEPT {
961 struct hash<basic_string_view<char, char_traits<char> > > : __string_view_hash<char> {};
965 struct hash<basic_string_view<char8_t, char_traits<char8_t> > > : __string_view_hash<char8_t> {};
969 struct hash<basic_string_view<char16_t, char_traits<char16_t> > > : __string_view_hash<char16_t> {};
972 struct hash<basic_string_view<char32_t, char_traits<char32_t> > > : __string_view_hash<char32_t> {};
976 struct hash<basic_string_view<wchar_t, char_traits<wchar_t> > > : __string_view_hash<wchar_t> {};
985 basic_string_view<char> operator "" sv(const char *__str, size_t __len) _NOEXCEPT
987 return basic_string_view<char> (__str, __len);
992 basic_string_view<wchar_t> operator "" sv(const wchar_t *__str, size_t __len) _NOEXCEPT
994 return basic_string_view<wchar_t> (__str, __len);
1000 basic_string_view<char8_t> operator "" sv(const char8_t *__str, size_t __len) _NOEXCEPT
1002 return basic_string_view<char8_t> (__str, __len);
1007 basic_string_view<char16_t> operator "" sv(const char16_t *__str, size_t __len) _NOEXCEPT
1009 return basic_string_view<char16_t> (__str, __len);
1013 basic_string_view<char32_t> operator "" sv(const char32_t *__str, size_t __len) _NOEXCEPT
1015 return basic_string_view<char32_t> (__str, __len);