diff options
Diffstat (limited to 'contrib/llvm-project/libcxx/include/__memory/ranges_construct_at.h')
-rw-r--r-- | contrib/llvm-project/libcxx/include/__memory/ranges_construct_at.h | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/contrib/llvm-project/libcxx/include/__memory/ranges_construct_at.h b/contrib/llvm-project/libcxx/include/__memory/ranges_construct_at.h index b6008a7b7f03..f731e75e7bdc 100644 --- a/contrib/llvm-project/libcxx/include/__memory/ranges_construct_at.h +++ b/contrib/llvm-project/libcxx/include/__memory/ranges_construct_at.h @@ -41,11 +41,8 @@ namespace ranges { namespace __construct_at { struct __fn { - template<class _Tp, class... _Args, class = decltype( - ::new (std::declval<void*>()) _Tp(std::declval<_Args>()...) - )> - _LIBCPP_HIDE_FROM_ABI - constexpr _Tp* operator()(_Tp* __location, _Args&& ...__args) const { + template <class _Tp, class... _Args, class = decltype(::new(std::declval<void*>()) _Tp(std::declval<_Args>()...))> + _LIBCPP_HIDE_FROM_ABI constexpr _Tp* operator()(_Tp* __location, _Args&&... __args) const { return std::construct_at(__location, std::forward<_Args>(__args)...); } }; @@ -53,7 +50,7 @@ struct __fn { } // namespace __construct_at inline namespace __cpo { - inline constexpr auto construct_at = __construct_at::__fn{}; +inline constexpr auto construct_at = __construct_at::__fn{}; } // namespace __cpo // destroy_at @@ -62,8 +59,7 @@ namespace __destroy_at { struct __fn { template <destructible _Tp> - _LIBCPP_HIDE_FROM_ABI - constexpr void operator()(_Tp* __location) const noexcept { + _LIBCPP_HIDE_FROM_ABI constexpr void operator()(_Tp* __location) const noexcept { std::destroy_at(__location); } }; @@ -71,7 +67,7 @@ struct __fn { } // namespace __destroy_at inline namespace __cpo { - inline constexpr auto destroy_at = __destroy_at::__fn{}; +inline constexpr auto destroy_at = __destroy_at::__fn{}; } // namespace __cpo // destroy @@ -81,15 +77,13 @@ namespace __destroy { struct __fn { template <__nothrow_input_iterator _InputIterator, __nothrow_sentinel_for<_InputIterator> _Sentinel> requires destructible<iter_value_t<_InputIterator>> - _LIBCPP_HIDE_FROM_ABI - constexpr _InputIterator operator()(_InputIterator __first, _Sentinel __last) const noexcept { + _LIBCPP_HIDE_FROM_ABI constexpr _InputIterator operator()(_InputIterator __first, _Sentinel __last) const noexcept { return std::__destroy(std::move(__first), std::move(__last)); } template <__nothrow_input_range _InputRange> requires destructible<range_value_t<_InputRange>> - _LIBCPP_HIDE_FROM_ABI - constexpr borrowed_iterator_t<_InputRange> operator()(_InputRange&& __range) const noexcept { + _LIBCPP_HIDE_FROM_ABI constexpr borrowed_iterator_t<_InputRange> operator()(_InputRange&& __range) const noexcept { return (*this)(ranges::begin(__range), ranges::end(__range)); } }; @@ -97,7 +91,7 @@ struct __fn { } // namespace __destroy inline namespace __cpo { - inline constexpr auto destroy = __destroy::__fn{}; +inline constexpr auto destroy = __destroy::__fn{}; } // namespace __cpo // destroy_n @@ -107,8 +101,8 @@ namespace __destroy_n { struct __fn { template <__nothrow_input_iterator _InputIterator> requires destructible<iter_value_t<_InputIterator>> - _LIBCPP_HIDE_FROM_ABI - constexpr _InputIterator operator()(_InputIterator __first, iter_difference_t<_InputIterator> __n) const noexcept { + _LIBCPP_HIDE_FROM_ABI constexpr _InputIterator + operator()(_InputIterator __first, iter_difference_t<_InputIterator> __n) const noexcept { return std::destroy_n(std::move(__first), __n); } }; @@ -116,7 +110,7 @@ struct __fn { } // namespace __destroy_n inline namespace __cpo { - inline constexpr auto destroy_n = __destroy_n::__fn{}; +inline constexpr auto destroy_n = __destroy_n::__fn{}; } // namespace __cpo } // namespace ranges |