@@ -148,15 +148,14 @@ public:
148
148
{}
149
149
150
150
#if !_CCCL_COMPILER(NVRTC)
151
- _CCCL_HIDE_FROM_ABI constexpr basic_string_view(::std::basic_string_view<_CharT, _Traits> __sv) noexcept
151
+ _CCCL_TEMPLATE(class _Traits2 = _Traits)
152
+ _CCCL_REQUIRES(is_same_v<_Traits2, char_traits<_CharT>>)
153
+ _CCCL_HIDE_FROM_ABI constexpr basic_string_view(::std::basic_string_view<_CharT> __sv) noexcept
152
154
: __data_{__sv.data()}
153
155
, __size_{__sv.size()}
154
156
{}
155
157
156
- _CCCL_TEMPLATE(bool = true)
157
- _CCCL_REQUIRES(is_same_v<_Traits, char_traits<_CharT>>)
158
- _CCCL_HIDE_FROM_ABI constexpr basic_string_view(
159
- ::std::basic_string_view<_CharT, ::std::char_traits<_CharT>> __sv) noexcept
158
+ _CCCL_HIDE_FROM_ABI constexpr basic_string_view(::std::basic_string_view<_CharT, _Traits> __sv) noexcept
160
159
: __data_{__sv.data()}
161
160
, __size_{__sv.size()}
162
161
{}
@@ -738,16 +737,16 @@ public:
738
737
}
739
738
740
739
#if !_CCCL_COMPILER(NVRTC)
741
- _CCCL_HIDE_FROM_ABI constexpr operator ::std::basic_string_view<_CharT, _Traits>() const noexcept
740
+ _CCCL_TEMPLATE(class _Traits2 = _Traits)
741
+ _CCCL_REQUIRES(is_same_v<_Traits2, char_traits<_CharT>>)
742
+ _CCCL_HIDE_FROM_ABI constexpr operator ::std::basic_string_view<_CharT>() const noexcept
742
743
{
743
- return ::std::basic_string_view<_CharT, _Traits >{__data_, __size_};
744
+ return ::std::basic_string_view<_CharT>{__data_, __size_};
744
745
}
745
746
746
- _CCCL_TEMPLATE(bool = true)
747
- _CCCL_REQUIRES(is_same_v<_Traits, char_traits<_CharT>>)
748
- _CCCL_HIDE_FROM_ABI constexpr operator ::std::basic_string_view<_CharT, ::std::char_traits<_CharT>>() const noexcept
747
+ _CCCL_HIDE_FROM_ABI constexpr operator ::std::basic_string_view<_CharT, _Traits>() const noexcept
749
748
{
750
- return ::std::basic_string_view<_CharT, ::std::char_traits<_CharT> >{__data_, __size_};
749
+ return ::std::basic_string_view<_CharT, _Traits >{__data_, __size_};
751
750
}
752
751
#endif // !_CCCL_COMPILER(NVRTC)
753
752
@@ -779,29 +778,28 @@ _CCCL_REQUIRES(_CUDA_VRANGES::contiguous_range<_Range>)
779
778
_CCCL_HOST_DEVICE basic_string_view(_Range&&) -> basic_string_view<_CUDA_VRANGES::range_value_t<_Range>>;
780
779
781
780
#if !_CCCL_COMPILER(NVRTC)
781
+ _CCCL_TEMPLATE(class _CharT)
782
+ _CCCL_HOST_DEVICE basic_string_view(::std::basic_string_view<_CharT>) -> basic_string_view<_CharT>;
783
+
782
784
_CCCL_TEMPLATE(class _CharT, class _Traits)
783
785
_CCCL_HOST_DEVICE basic_string_view(::std::basic_string_view<_CharT, _Traits>) -> basic_string_view<_CharT, _Traits>;
784
-
785
- _CCCL_TEMPLATE(class _CharT)
786
- _CCCL_HOST_DEVICE basic_string_view(::std::basic_string_view<_CharT, ::std::char_traits<_CharT>>)
787
- -> basic_string_view<_CharT, char_traits<_CharT>>;
788
786
#endif // !_CCCL_COMPILER(NVRTC)
789
787
790
788
// operator <<
791
789
792
790
#if !_CCCL_COMPILER(NVRTC)
793
791
template <class _CharT, class _Traits>
794
- _CCCL_HIDE_FROM_ABI _CCCL_HOST ::std::basic_ostream<_CharT, _Traits>&
792
+ _CCCL_HIDE_FROM_ABI ::std::basic_ostream<_CharT, _Traits>&
795
793
operator<<(::std::basic_ostream<_CharT, _Traits>& __os, basic_string_view<_CharT, _Traits> __str)
796
794
{
797
795
return __os << ::std::basic_string_view<_CharT, _Traits>{__str};
798
796
}
799
797
800
798
template <class _CharT>
801
- _CCCL_HIDE_FROM_ABI _CCCL_HOST ::std::basic_ostream<_CharT, ::std::char_traits<_CharT>>& operator<<(
802
- ::std::basic_ostream<_CharT, ::std::char_traits<_CharT>> & __os, basic_string_view<_CharT, char_traits<_CharT> > __str)
799
+ _CCCL_HIDE_FROM_ABI ::std::basic_ostream<_CharT>&
800
+ operator<<( ::std::basic_ostream<_CharT> & __os, basic_string_view<_CharT> __str)
803
801
{
804
- return __os << ::std::basic_string_view<_CharT, ::std::char_traits<_CharT> >{__str};
802
+ return __os << ::std::basic_string_view<_CharT>{__str};
805
803
}
806
804
#endif // !_CCCL_COMPILER(NVRTC)
807
805
0 commit comments