Make these look the same as everywhere else.
#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_CONCEPTS)
// [concept.swappable]
-namespace ranges::__swap {
- // Deleted to inhibit ADL
+
+namespace ranges {
+namespace __swap {
+
template<class _Tp>
void swap(_Tp&, _Tp&) = delete;
-
- // [1]
template<class _Tp, class _Up>
concept __unqualified_swappable_with =
(__class_or_enum<remove_cvref_t<_Tp>> || __class_or_enum<remove_cvref_t<_Up>>) &&
__y = _VSTD::exchange(__x, _VSTD::move(__y));
}
};
-} // namespace ranges::__swap
+} // namespace __swap
-namespace ranges::inline __cpo {
+inline namespace __cpo {
inline constexpr auto swap = __swap::__fn{};
-} // namespace ranges::__cpo
+} // namespace __cpo
+} // namespace ranges
template<class _Tp>
concept swappable = requires(_Tp& __a, _Tp& __b) { ranges::swap(__a, __b); };
#if !defined(_LIBCPP_HAS_NO_RANGES)
-namespace ranges::__iter_move {
+// [iterator.cust.move]
+
+namespace ranges {
+namespace __iter_move {
+
void iter_move();
template<class _Ip>
// [iterator.cust.move]/1.3
// Otherwise, ranges::iter_move(E) is ill-formed.
};
-} // namespace ranges::__iter_move
+} // namespace __iter_move
-namespace ranges::inline __cpo {
+inline namespace __cpo {
inline constexpr auto iter_move = __iter_move::__fn{};
-}
+} // namespace __cpo
+} // namespace ranges
template<__dereferenceable _Tp>
-requires requires(_Tp& __t) { { ranges::iter_move(__t) } -> __referenceable; }
+ requires requires(_Tp& __t) { { ranges::iter_move(__t) } -> __referenceable; }
using iter_rvalue_reference_t = decltype(ranges::iter_move(declval<_Tp&>()));
#endif // !_LIBCPP_HAS_NO_RANGES
#if !defined(_LIBCPP_HAS_NO_RANGES)
+// [iter.cust.swap]
+
namespace ranges {
namespace __iter_swap {
template<class _I1, class _I2>
*_VSTD::forward<_T1>(__x) = _VSTD::move(__old);
}
};
-} // end namespace __iter_swap
+} // namespace __iter_swap
inline namespace __cpo {
inline constexpr auto iter_swap = __iter_swap::__fn{};
} // namespace __cpo
-
} // namespace ranges
template<class _I1, class _I2 = _I1>
inline constexpr bool enable_view = derived_from<_Tp, view_base> ||
requires { ranges::__is_derived_from_view_interface((_Tp*)nullptr, (_Tp*)nullptr); };
-} // end namespace ranges
+} // namespace ranges
#endif // !_LIBCPP_HAS_NO_RANGES