[libc++] Consistently use version guards outside namespace macros (#181136)
This has the benefit of consistent placement for these macros (outside the namespace, not inside it). This, in turn, makes it more obvious that the condition applies to the entire namespace scope. Compile times are also reduced a bit, since the compiler doesn't have to open a namespace just to close it again. This is enforced with a clang-tidy check. As a drive-by this also fixes a few macro comments.
This commit is contained in:
parent
09d1b945b5
commit
ad2fbea797
157 changed files with 668 additions and 603 deletions
|
|
@ -17,9 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
template <class _Tp, class _Compare>
|
||||
[[nodiscard]] inline _LIBCPP_HIDE_FROM_ABI constexpr const _Tp&
|
||||
clamp(_LIBCPP_LIFETIMEBOUND const _Tp& __v,
|
||||
|
|
@ -37,8 +38,9 @@ clamp(_LIBCPP_LIFETIMEBOUND const _Tp& __v,
|
|||
_LIBCPP_LIFETIMEBOUND const _Tp& __hi) {
|
||||
return std::clamp(__v, __lo, __hi, __less<>());
|
||||
}
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___ALGORITHM_CLAMP_H
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// Fast path for random access iterators which computes the number of loop iterations up-front and
|
||||
// then skips the iterator comparisons inside the loop.
|
||||
template <class _InputIterator1, class _InputIterator2, class _Cmp>
|
||||
|
|
@ -116,10 +116,10 @@ template <class _InputIterator1, class _InputIterator2>
|
|||
std::move(__first1), std::move(__last1), std::move(__first2), std::move(__last2), std::compare_three_way());
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ALGORITHM_LEXICOGRAPHICAL_COMPARE_THREE_WAY_H
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace ranges {
|
||||
|
||||
template <class _OutIter1, class _ValType1>
|
||||
|
|
@ -47,10 +47,10 @@ struct out_value_result {
|
|||
|
||||
} // namespace ranges
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ALGORITHM_OUT_VALUE_RESULT_H
|
||||
|
|
|
|||
|
|
@ -67,10 +67,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 14
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _InputIterator, class _OutputIterator>
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr pair<_OutputIterator, __iterator_value_type<_InputIterator>>
|
||||
__partial_sum_max(_InputIterator __first, _InputIterator __last, _OutputIterator __result) {
|
||||
|
|
@ -422,10 +422,10 @@ __radix_sort(_RandomAccessIterator1 __first, _RandomAccessIterator1 __last, _Ran
|
|||
std::__radix_sort(__first, __last, __buffer, __identity{}, __low_byte_fn{});
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 14
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 14
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ALGORITHM_RADIX_SORT_H
|
||||
|
|
|
|||
|
|
@ -24,10 +24,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace ranges {
|
||||
|
||||
template <class _Ip, class _Op>
|
||||
|
|
@ -47,10 +47,10 @@ inline constexpr auto copy_n = __copy_n{};
|
|||
} // namespace __cpo
|
||||
} // namespace ranges
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ALGORITHM_RANGES_COPY_N_H
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Comp>
|
||||
struct __debug_three_way_comp {
|
||||
_Comp& __comp_;
|
||||
|
|
@ -67,8 +67,8 @@ template <class _Comp>
|
|||
using __three_way_comp_ref_type _LIBCPP_NODEBUG = _Comp&;
|
||||
# endif
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ALGORITHM_THREE_WAY_COMP_REF_TYPE_H
|
||||
|
|
|
|||
|
|
@ -23,9 +23,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
# if _LIBCPP_HAS_THREADS
|
||||
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
|
@ -258,8 +259,8 @@ _LIBCPP_HIDE_FROM_ABI void __atomic_wait(_AtomicWaitable& __a, _Tp __val, memory
|
|||
});
|
||||
}
|
||||
|
||||
#endif // C++20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ATOMIC_ATOMIC_SYNC_H
|
||||
|
|
|
|||
|
|
@ -25,10 +25,11 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_THREADS
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
# if _LIBCPP_HAS_THREADS && _LIBCPP_AVAILABILITY_HAS_NEW_SYNC
|
||||
# if _LIBCPP_AVAILABILITY_HAS_NEW_SYNC
|
||||
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_AVAILABILITY_NEW_SYNC
|
||||
|
|
@ -110,7 +111,7 @@ _LIBCPP_HIDE_FROM_ABI bool __atomic_wait_unless_with_timeout(
|
|||
return __poll_result == __poll_with_backoff_results::__poll_success;
|
||||
}
|
||||
|
||||
# elif _LIBCPP_HAS_THREADS // _LIBCPP_HAS_THREADS && _LIBCPP_AVAILABILITY_HAS_NEW_SYNC
|
||||
# else // _LIBCPP_AVAILABILITY_HAS_NEW_SYNC
|
||||
|
||||
template <class _AtomicWaitable, class _Poll, class _Rep, class _Period>
|
||||
_LIBCPP_HIDE_FROM_ABI bool __atomic_wait_unless_with_timeout(
|
||||
|
|
@ -129,10 +130,10 @@ _LIBCPP_HIDE_FROM_ABI bool __atomic_wait_unless_with_timeout(
|
|||
return __res == __poll_with_backoff_results::__poll_success;
|
||||
}
|
||||
|
||||
# endif // _LIBCPP_HAS_THREADS && _LIBCPP_AVAILABILITY_HAS_NEW_SYNC
|
||||
|
||||
#endif // C++20
|
||||
# endif // _LIBCPP_AVAILABILITY_HAS_NEW_SYNC
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_THREADS
|
||||
|
||||
#endif // _LIBCPP___ATOMIC_ATOMIC_SYNC_TIMED_H
|
||||
|
|
|
|||
|
|
@ -22,10 +22,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// The customisation points to enable the following functions:
|
||||
// - __atomic_wait
|
||||
// - __atomic_wait_unless
|
||||
|
|
@ -94,8 +94,8 @@ concept __has_native_atomic_wait = is_same_v<_Tp, __cxx_contention_t>;
|
|||
|
||||
# endif // _LIBCPP_ABI_ATOMIC_WAIT_NATIVE_BY_SIZE
|
||||
|
||||
#endif // C++20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ATOMIC_ATOMIC_WAITABLE_TRAITS_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp>
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr bool __is_fp80_long_double() {
|
||||
// Only x87-fp80 long double has 64-bit mantissa
|
||||
|
|
@ -48,8 +48,8 @@ _LIBCPP_HIDE_FROM_ABI constexpr bool __has_rmw_builtin() {
|
|||
# endif
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ATOMIC_FLOATING_POINT_HELPER_H
|
||||
|
|
|
|||
|
|
@ -17,18 +17,16 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#ifndef _LIBCPP_CXX03_LANG
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _ToType, class _FromType>
|
||||
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI constexpr _ToType __bit_cast(const _FromType& __from) noexcept {
|
||||
return __builtin_bit_cast(_ToType, __from);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_CXX03_LANG
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
# if _LIBCPP_STD_VER >= 20
|
||||
|
||||
template <class _ToType, class _FromType>
|
||||
requires(sizeof(_ToType) == sizeof(_FromType) && is_trivially_copyable_v<_ToType> &&
|
||||
|
|
@ -37,8 +35,10 @@ template <class _ToType, class _FromType>
|
|||
return __builtin_bit_cast(_ToType, __from);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
# endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_CXX03_LANG
|
||||
|
||||
#endif // _LIBCPP___BIT_BIT_CAST_H
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp>
|
||||
[[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr _Tp __bit_ceil(_Tp __t) noexcept {
|
||||
if (__t < 2)
|
||||
|
|
@ -47,8 +47,9 @@ template <__unsigned_integer _Tp>
|
|||
}
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___BIT_BIT_CEIL_H
|
||||
|
|
|
|||
|
|
@ -18,8 +18,4 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP___CHARCONV_TO_CHARS
|
||||
|
|
|
|||
|
|
@ -28,10 +28,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
# include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace chrono {
|
||||
|
||||
class gps_clock;
|
||||
|
|
@ -78,11 +78,11 @@ public:
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
|
|
|||
|
|
@ -18,12 +18,13 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if _LIBCPP_HAS_MONOTONIC_CLOCK
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
||||
namespace chrono {
|
||||
|
||||
#if _LIBCPP_HAS_MONOTONIC_CLOCK
|
||||
class _LIBCPP_EXPORTED_FROM_ABI steady_clock {
|
||||
public:
|
||||
typedef nanoseconds duration;
|
||||
|
|
@ -34,11 +35,12 @@ public:
|
|||
|
||||
[[__nodiscard__]] static time_point now() _NOEXCEPT;
|
||||
};
|
||||
#endif
|
||||
|
||||
} // namespace chrono
|
||||
|
||||
_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif
|
||||
|
||||
#endif // _LIBCPP___CHRONO_STEADY_CLOCK_H
|
||||
|
|
|
|||
|
|
@ -28,10 +28,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
# include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace chrono {
|
||||
|
||||
class tai_clock;
|
||||
|
|
@ -96,11 +96,11 @@ public:
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
|
|
|||
|
|
@ -35,11 +35,11 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
# include <__undef_macros>
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
namespace chrono {
|
||||
|
||||
enum class choose { earliest, latest };
|
||||
|
|
@ -174,12 +174,12 @@ operator<=>(const time_zone& __x, const time_zone& __y) noexcept {
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
# include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace chrono {
|
||||
|
||||
class time_zone_link {
|
||||
|
|
@ -67,11 +67,11 @@ operator<=>(const time_zone_link& __x, const time_zone_link& __y) noexcept {
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
|
|
|||
|
|
@ -34,11 +34,11 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
# include <__undef_macros>
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
namespace chrono {
|
||||
|
||||
struct tzdb {
|
||||
|
|
@ -85,12 +85,12 @@ private:
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
|
|
|||
|
|
@ -27,11 +27,11 @@
|
|||
# pragma GCC system_header
|
||||
# endif
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
namespace chrono {
|
||||
|
||||
// TODO TZDB
|
||||
|
|
@ -99,12 +99,12 @@ _LIBCPP_AVAILABILITY_TZDB _LIBCPP_EXPORTED_FROM_ABI const tzdb& reload_tzdb();
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
||||
#endif // _LIBCPP___CHRONO_TZDB_LIST_H
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@
|
|||
# pragma GCC system_header
|
||||
# endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace chrono {
|
||||
|
||||
class utc_clock;
|
||||
|
|
@ -153,11 +153,11 @@ utc_clock::to_sys(const utc_time<_Duration>& __time) {
|
|||
|
||||
} // namespace chrono
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
||||
#endif // _LIBCPP___CHRONO_UTC_CLOCK_H
|
||||
|
|
|
|||
|
|
@ -40,10 +40,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
# include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
# if _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM && _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace chrono {
|
||||
|
||||
template <class>
|
||||
|
|
@ -232,11 +232,11 @@ struct hash<chrono::zoned_time<_Duration, _TimeZonePtr>> {
|
|||
|
||||
# endif // _LIBCPP_STD_VER >= 26
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
# endif // _LIBCPP_STD_VER >= 20 && _LIBCPP_HAS_TIME_ZONE_DATABASE && _LIBCPP_HAS_FILESYSTEM &&
|
||||
// _LIBCPP_HAS_LOCALIZATION
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_HAS_EXPERIMENTAL_TZDB
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace __comp_detail {
|
||||
|
||||
enum _ClassifyCompCategory : unsigned { _None, _PartialOrd, _WeakOrd, _StrongOrd, _CCC_Size };
|
||||
|
|
@ -79,8 +79,8 @@ struct common_comparison_category {
|
|||
template <class... _Ts>
|
||||
using common_comparison_category_t = typename common_comparison_category<_Ts...>::type;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___COMPARE_COMMON_COMPARISON_CATEGORY_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
struct compare_three_way {
|
||||
template <class _T1, class _T2>
|
||||
requires three_way_comparable_with<_T1, _T2>
|
||||
|
|
@ -33,8 +33,8 @@ struct compare_three_way {
|
|||
using is_transparent = void;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___COMPARE_COMPARE_THREE_WAY_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class, class, class>
|
||||
struct _LIBCPP_HIDE_FROM_ABI __compare_three_way_result {};
|
||||
|
||||
|
|
@ -39,8 +39,8 @@ struct _LIBCPP_NO_SPECIALIZATIONS compare_three_way_result : __compare_three_way
|
|||
template <class _Tp, class _Up = _Tp>
|
||||
using compare_three_way_result_t = typename compare_three_way_result<_Tp, _Up>::type;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___COMPARE_COMPARE_THREE_WAY_RESULT_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// exposition only
|
||||
enum class _OrdResult : signed char { __less = -1, __equiv = 0, __greater = 1 };
|
||||
|
||||
|
|
@ -275,8 +275,8 @@ template <class _Tp>
|
|||
concept __comparison_category =
|
||||
is_same_v<_Tp, partial_ordering> || is_same_v<_Tp, weak_ordering> || is_same_v<_Tp, strong_ordering>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___COMPARE_ORDERING_H
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [expos.only.func]
|
||||
|
||||
_LIBCPP_HIDE_FROM_ABI inline constexpr auto __synth_three_way = []<class _Tp, class _Up>(const _Tp& __t, const _Up& __u)
|
||||
|
|
@ -46,8 +46,8 @@ template <class _Tp, class _Up = _Tp>
|
|||
using __synth_three_way_result _LIBCPP_NODEBUG =
|
||||
decltype(std::__synth_three_way(std::declval<_Tp&>(), std::declval<_Up&>()));
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___COMPARE_SYNTH_THREE_WAY_H
|
||||
|
|
|
|||
|
|
@ -24,10 +24,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp, class _Cat>
|
||||
concept __compares_as = same_as<common_comparison_category_t<_Tp, _Cat>, _Cat>;
|
||||
|
||||
|
|
@ -48,8 +48,8 @@ concept three_way_comparable_with =
|
|||
{ __u <=> __t } -> __compares_as<_Cat>;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___COMPARE_THREE_WAY_COMPARABLE_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concepts.arithmetic], arithmetic concepts
|
||||
|
||||
template <class _Tp>
|
||||
|
|
@ -36,8 +36,8 @@ concept unsigned_integral = integral<_Tp> && !signed_integral<_Tp>;
|
|||
template <class _Tp>
|
||||
concept floating_point = is_floating_point_v<_Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_ARITHMETIC_H
|
||||
|
|
|
|||
|
|
@ -20,10 +20,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.assignable]
|
||||
|
||||
template <class _Lhs, class _Rhs>
|
||||
|
|
@ -34,8 +34,8 @@ concept assignable_from =
|
|||
{ __lhs = std::forward<_Rhs>(__rhs) } -> same_as<_Lhs>;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_ASSIGNABLE_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concepts.booleantestable]
|
||||
|
||||
template <class _Tp>
|
||||
|
|
@ -31,8 +31,8 @@ concept __boolean_testable = __boolean_testable_impl<_Tp> && requires(_Tp&& __t)
|
|||
{ !std::forward<_Tp>(__t) } -> __boolean_testable_impl;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_BOOLEAN_TESTABLE_H
|
||||
|
|
|
|||
|
|
@ -18,17 +18,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// Whether a type is a class type or enumeration type according to the Core wording.
|
||||
|
||||
template <class _Tp>
|
||||
concept __class_or_enum = is_class_v<_Tp> || is_union_v<_Tp> || is_enum_v<_Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_CLASS_OR_ENUM_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.commonref]
|
||||
|
||||
template <class _Tp, class _Up>
|
||||
|
|
@ -29,8 +29,8 @@ concept common_reference_with =
|
|||
same_as<common_reference_t<_Tp, _Up>, common_reference_t<_Up, _Tp>> &&
|
||||
convertible_to<_Tp, common_reference_t<_Tp, _Up>> && convertible_to<_Up, common_reference_t<_Tp, _Up>>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_COMMON_REFERENCE_WITH_H
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp, class _Up, class _CommonRef = common_reference_t<const _Tp&, const _Up&>>
|
||||
concept __comparison_common_type_with_impl =
|
||||
same_as<common_reference_t<const _Tp&, const _Up&>, common_reference_t<const _Up&, const _Tp&>> && requires {
|
||||
|
|
@ -33,8 +33,8 @@ concept __comparison_common_type_with_impl =
|
|||
template <class _Tp, class _Up>
|
||||
concept __comparison_common_type_with = __comparison_common_type_with_impl<remove_cvref_t<_Tp>, remove_cvref_t<_Up>>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_COMPARISON_COMMON_TYPE_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.constructible]
|
||||
template <class _Tp, class... _Args>
|
||||
concept constructible_from = destructible<_Tp> && is_constructible_v<_Tp, _Args...>;
|
||||
|
|
@ -48,8 +48,8 @@ concept copy_constructible =
|
|||
constructible_from<_Tp, const _Tp> && convertible_to<const _Tp, _Tp>;
|
||||
// clang-format on
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_CONSTRUCTIBLE_H
|
||||
|
|
|
|||
|
|
@ -17,17 +17,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.convertible]
|
||||
|
||||
template <class _From, class _To>
|
||||
concept convertible_to = is_convertible_v<_From, _To> && requires { static_cast<_To>(std::declval<_From>()); };
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_CONVERTIBLE_TO_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concepts.object]
|
||||
|
||||
// clang-format off
|
||||
|
|
@ -34,8 +34,8 @@ concept copyable =
|
|||
assignable_from<_Tp&, const _Tp>;
|
||||
// clang-format on
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_COPYABLE_H
|
||||
|
|
|
|||
|
|
@ -17,17 +17,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.derived]
|
||||
|
||||
template <class _Dp, class _Bp>
|
||||
concept derived_from = is_base_of_v<_Bp, _Dp> && is_convertible_v<const volatile _Dp*, const volatile _Bp*>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_DERIVED_FROM_H
|
||||
|
|
|
|||
|
|
@ -16,17 +16,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.destructible]
|
||||
|
||||
template <class _Tp>
|
||||
concept destructible = is_nothrow_destructible_v<_Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_DESTRUCTIBLE_H
|
||||
|
|
|
|||
|
|
@ -17,15 +17,15 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp, class _Up>
|
||||
concept __different_from = !same_as<remove_cvref_t<_Tp>, remove_cvref_t<_Up>>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_DIFFERENT_FROM_H
|
||||
|
|
|
|||
|
|
@ -20,10 +20,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.equalitycomparable]
|
||||
|
||||
template <class _Tp, class _Up>
|
||||
|
|
@ -50,8 +50,8 @@ concept equality_comparable_with =
|
|||
__weakly_equality_comparable_with<_Tp, _Up>;
|
||||
// clang-format on
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_EQUALITY_COMPARABLE_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.invocable]
|
||||
|
||||
template <class _Fn, class... _Args>
|
||||
|
|
@ -33,8 +33,8 @@ concept invocable = requires(_Fn&& __fn, _Args&&... __args) {
|
|||
template <class _Fn, class... _Args>
|
||||
concept regular_invocable = invocable<_Fn, _Args...>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_INVOCABLE_H
|
||||
|
|
|
|||
|
|
@ -19,17 +19,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concepts.object]
|
||||
|
||||
template <class _Tp>
|
||||
concept movable = is_object_v<_Tp> && move_constructible<_Tp> && assignable_from<_Tp&, _Tp> && swappable<_Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_MOVABLE_H
|
||||
|
|
|
|||
|
|
@ -18,17 +18,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.predicate]
|
||||
|
||||
template <class _Fn, class... _Args>
|
||||
concept predicate = regular_invocable<_Fn, _Args...> && __boolean_testable<invoke_result_t<_Fn, _Args...>>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_PREDICATE_H
|
||||
|
|
|
|||
|
|
@ -17,17 +17,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.object]
|
||||
|
||||
template <class _Tp>
|
||||
concept regular = semiregular<_Tp> && equality_comparable<_Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_REGULAR_H
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.relation]
|
||||
|
||||
template <class _Rp, class _Tp, class _Up>
|
||||
|
|
@ -36,8 +36,8 @@ concept equivalence_relation = relation<_Rp, _Tp, _Up>;
|
|||
template <class _Rp, class _Tp, class _Up>
|
||||
concept strict_weak_order = relation<_Rp, _Tp, _Up>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_RELATION_H
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.same]
|
||||
|
||||
template <class _Tp, class _Up>
|
||||
|
|
@ -28,8 +28,8 @@ concept __same_as_impl = _IsSame<_Tp, _Up>::value;
|
|||
template <class _Tp, class _Up>
|
||||
concept same_as = __same_as_impl<_Tp, _Up> && __same_as_impl<_Up, _Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_SAME_AS_H
|
||||
|
|
|
|||
|
|
@ -17,17 +17,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.object]
|
||||
|
||||
template <class _Tp>
|
||||
concept semiregular = copyable<_Tp> && default_initializable<_Tp>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_SEMIREGULAR_H
|
||||
|
|
|
|||
|
|
@ -30,10 +30,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.swappable]
|
||||
|
||||
namespace ranges {
|
||||
|
|
@ -113,10 +113,10 @@ concept swappable_with = common_reference_with<_Tp, _Up> && requires(_Tp&& __t,
|
|||
ranges::swap(std::forward<_Up>(__u), std::forward<_Tp>(__t));
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_SWAPPABLE_H
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [concept.totallyordered]
|
||||
|
||||
template <class _Tp, class _Up>
|
||||
|
|
@ -52,8 +52,8 @@ concept totally_ordered_with =
|
|||
__partially_ordered_with<_Tp, _Up>;
|
||||
// clang-format on
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___CONCEPTS_TOTALLY_ORDERED_H
|
||||
|
|
|
|||
|
|
@ -31,11 +31,11 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
#if _LIBCPP_HAS_THREADS
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
||||
#if _LIBCPP_HAS_THREADS
|
||||
|
||||
// enum class cv_status
|
||||
_LIBCPP_DECLARE_STRONG_ENUM(cv_status){no_timeout, timeout};
|
||||
_LIBCPP_DECLARE_STRONG_ENUM_EPILOG(cv_status)
|
||||
|
|
@ -224,11 +224,11 @@ inline void condition_variable::__do_timed_wait(unique_lock<mutex>& __lk,
|
|||
wait_for(__lk, __tp - _Clock::now());
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_HAS_THREADS
|
||||
|
||||
_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_HAS_THREADS
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___CONDITION_VARIABLE_CONDITION_VARIABLE_H
|
||||
|
|
|
|||
|
|
@ -16,12 +16,14 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if !defined(_LIBCPP_CXX03_LANG)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if !defined(_LIBCPP_CXX03_LANG)
|
||||
using ::max_align_t _LIBCPP_USING_IF_EXISTS;
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif
|
||||
|
||||
#endif // _LIBCPP___CSTDDEF_MAX_ALIGN_T_H
|
||||
|
|
|
|||
|
|
@ -24,10 +24,10 @@
|
|||
#include <__type_traits/is_const.h>
|
||||
#include <__type_traits/maybe_const.h>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [container.adaptors.format] only specifies the library should provide the
|
||||
// formatter specializations, not which header should provide them.
|
||||
// Since <format> includes a lot of headers, add these headers here instead of
|
||||
|
|
@ -66,8 +66,8 @@ template <class _CharT, class _Tp, formattable<_CharT> _Container>
|
|||
struct formatter<stack<_Tp, _Container>, _CharT>
|
||||
: public __formatter_container_adaptor<stack<_Tp, _Container>, _CharT> {};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP___FORMAT_CONTAINER_ADAPTOR_H
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace __format {
|
||||
|
||||
/// Opt-in to enable \ref __insertable for a \a _Container.
|
||||
|
|
@ -28,8 +28,8 @@ inline constexpr bool __enable_insertable = false;
|
|||
|
||||
} // namespace __format
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___FORMAT_ENABLE_INSERTABLE_H
|
||||
|
|
|
|||
|
|
@ -71,10 +71,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace __escaped_output_table {
|
||||
// clang-format off
|
||||
|
||||
|
|
@ -881,8 +881,8 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
|
|||
// clang-format on
|
||||
} // namespace __escaped_output_table
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP___FORMAT_ESCAPED_OUTPUT_TABLE_H
|
||||
|
|
|
|||
|
|
@ -20,10 +20,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [tuple.like] defines a tuple-like exposition only concept. This concept is not related to that. Therefore it uses a
|
||||
// different name for the concept.
|
||||
//
|
||||
|
|
@ -35,8 +35,8 @@ template <class _Tp>
|
|||
concept __fmt_pair_like =
|
||||
__is_specialization_v<_Tp, pair> || (__is_specialization_v<_Tp, tuple> && tuple_size_v<_Tp> == 2);
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP___FORMAT_FMT_PAIR_LIKE_H
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <__fmt_char_type _CharT, class _Tuple, formattable<_CharT>... _Args>
|
||||
struct __formatter_tuple {
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr void set_separator(basic_string_view<_CharT> __separator) noexcept {
|
||||
|
|
@ -141,8 +141,8 @@ struct formatter<pair<_Args...>, _CharT> : public __formatter_tuple<_CharT, pair
|
|||
template <__fmt_char_type _CharT, formattable<_CharT>... _Args>
|
||||
struct formatter<tuple<_Args...>, _CharT> : public __formatter_tuple<_CharT, tuple<_Args...>, _Args...> {};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP___FORMAT_FORMATTER_TUPLE_H
|
||||
|
|
|
|||
|
|
@ -33,10 +33,10 @@
|
|||
#include <__utility/pair.h>
|
||||
#include <string_view>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Rp, class _CharT>
|
||||
concept __const_formattable_range =
|
||||
ranges::input_range<const _Rp> && formattable<ranges::range_reference_t<const _Rp>, _CharT>;
|
||||
|
|
@ -169,8 +169,8 @@ template <ranges::input_range _Rp, class _CharT>
|
|||
requires(format_kind<_Rp> != range_format::disabled && formattable<ranges::range_reference_t<_Rp>, _CharT>)
|
||||
struct formatter<_Rp, _CharT> : __range_default_formatter<format_kind<_Rp>, _Rp, _CharT> {};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP___FORMAT_RANGE_DEFAULT_FORMATTER_H
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@
|
|||
#include <__ranges/concepts.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <ranges::input_range _Rp>
|
||||
requires same_as<_Rp, remove_cvref_t<_Rp>>
|
||||
inline constexpr range_format format_kind<_Rp> = [] {
|
||||
|
|
@ -50,8 +50,8 @@ inline constexpr range_format format_kind<_Rp> = [] {
|
|||
return range_format::sequence;
|
||||
}();
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -34,10 +34,10 @@
|
|||
#include <__type_traits/remove_cvref.h>
|
||||
#include <string_view>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp, class _CharT = char>
|
||||
requires same_as<remove_cvref_t<_Tp>, _Tp> && formattable<_Tp, _CharT>
|
||||
struct range_formatter {
|
||||
|
|
@ -260,8 +260,8 @@ private:
|
|||
basic_string_view<_CharT> __closing_bracket_ = _LIBCPP_STATICALLY_WIDEN(_CharT, "]");
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP___FORMAT_RANGE_FORMATTER_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_NEGATORS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Predicate>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX17 binary_negate
|
||||
: public __binary_function<typename _Predicate::first_argument_type,
|
||||
|
|
@ -44,8 +44,8 @@ not2(const _Predicate& __pred) {
|
|||
return binary_negate<_Predicate>(__pred);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_NEGATORS)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_NEGATORS)
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_BINARY_NEGATE_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Operation>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX11 binder1st
|
||||
: public __unary_function<typename _Operation::second_argument_type, typename _Operation::result_type> {
|
||||
|
|
@ -47,8 +47,8 @@ bind1st(const _Operation& __op, const _Tp& __x) {
|
|||
return binder1st<_Operation>(__op, __x);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_BINDER1ST_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Operation>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX11 binder2nd
|
||||
: public __unary_function<typename _Operation::first_argument_type, typename _Operation::result_type> {
|
||||
|
|
@ -47,8 +47,8 @@ bind2nd(const _Operation& __op, const _Tp& __x) {
|
|||
return binder2nd<_Operation>(__op, __x);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_BINDER2ND_H
|
||||
|
|
|
|||
|
|
@ -20,10 +20,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
struct __compose_op {
|
||||
template <class _Fn1, class _Fn2, class... _Args>
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Fn1&& __f1, _Fn2&& __f2, _Args&&... __args) const noexcept(noexcept(
|
||||
|
|
@ -46,8 +46,8 @@ _LIBCPP_HIDE_FROM_ABI constexpr auto __compose(_Fn1&& __f1, _Fn2&& __f2) noexcep
|
|||
return __compose_t<decay_t<_Fn1>, decay_t<_Fn2>>(std::forward<_Fn1>(__f1), std::forward<_Fn2>(__f2));
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_COMPOSE_H
|
||||
|
|
|
|||
|
|
@ -19,19 +19,17 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Fn, class... _Args>
|
||||
_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 invoke_result_t<_Fn, _Args...>
|
||||
invoke(_Fn&& __f, _Args&&... __args) noexcept(is_nothrow_invocable_v<_Fn, _Args...>) {
|
||||
return std::__invoke(std::forward<_Fn>(__f), std::forward<_Args>(__args)...);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
# if _LIBCPP_STD_VER >= 23
|
||||
template <class _Result, class _Fn, class... _Args>
|
||||
requires is_invocable_r_v<_Result, _Fn, _Args...>
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr _Result
|
||||
|
|
@ -48,8 +46,10 @@ invoke_r(_Fn&& __f, _Args&&... __args) noexcept(is_nothrow_invocable_r_v<_Result
|
|||
return std::invoke(std::forward<_Fn>(__f), std::forward<_Args>(__args)...);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
# endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_INVOKE_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Sp, class _Tp>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX11 mem_fun_t : public __unary_function<_Tp*, _Sp> {
|
||||
_Sp (_Tp::*__p_)();
|
||||
|
|
@ -138,8 +138,8 @@ mem_fun_ref(_Sp (_Tp::*__f)(_Ap) const) {
|
|||
return const_mem_fun1_ref_t<_Sp, _Tp, _Ap>(__f);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_MEM_FUN_REF_H
|
||||
|
|
|
|||
|
|
@ -28,10 +28,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Op, class _Indices, class... _BoundArgs>
|
||||
struct __perfect_forward_impl;
|
||||
|
||||
|
|
@ -96,10 +96,10 @@ public:
|
|||
template <class _Op, class... _Args>
|
||||
using __perfect_forward _LIBCPP_NODEBUG = __perfect_forward_impl<_Op, index_sequence_for<_Args...>, _Args...>;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_PERFECT_FORWARD_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Arg1, class _Arg2, class _Result>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX11 pointer_to_binary_function : public __binary_function<_Arg1, _Arg2, _Result> {
|
||||
_Result (*__f_)(_Arg1, _Arg2);
|
||||
|
|
@ -36,8 +36,8 @@ ptr_fun(_Result (*__f)(_Arg1, _Arg2)) {
|
|||
return pointer_to_binary_function<_Arg1, _Arg2, _Result>(__f);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_POINTER_TO_BINARY_FUNCTION_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Arg, class _Result>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX11 pointer_to_unary_function : public __unary_function<_Arg, _Result> {
|
||||
_Result (*__f_)(_Arg);
|
||||
|
|
@ -36,8 +36,8 @@ ptr_fun(_Result (*__f)(_Arg)) {
|
|||
return pointer_to_unary_function<_Arg, _Result>(__f);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_POINTER_TO_UNARY_FUNCTION_H
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace ranges {
|
||||
|
||||
struct equal_to {
|
||||
|
|
@ -115,8 +115,8 @@ inline const bool __is_generic_transparent_comparator_v<ranges::less> = true;
|
|||
template <>
|
||||
inline const bool __is_generic_transparent_comparator_v<ranges::greater> = true;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_RANGES_OPERATIONS_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_NEGATORS)
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Predicate>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX17 unary_negate : public __unary_function<typename _Predicate::argument_type, bool> {
|
||||
_Predicate __pred_;
|
||||
|
|
@ -40,8 +40,8 @@ not1(const _Predicate& __pred) {
|
|||
return unary_negate<_Predicate>(__pred);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_NEGATORS)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_NEGATORS)
|
||||
|
||||
#endif // _LIBCPP___FUNCTIONAL_UNARY_NEGATE_H
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Context>
|
||||
class basic_format_arg;
|
||||
|
||||
|
|
@ -48,8 +48,8 @@ constexpr range_format format_kind = [] {
|
|||
|
||||
# endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___FWD_FORMAT_H
|
||||
|
|
|
|||
|
|
@ -21,18 +21,18 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
inline constexpr size_t dynamic_extent = numeric_limits<size_t>::max();
|
||||
template <typename _Tp, size_t _Extent = dynamic_extent>
|
||||
class span;
|
||||
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___FWD_SPAN_H
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class... _Types>
|
||||
class variant;
|
||||
|
||||
|
|
@ -61,8 +61,8 @@ _LIBCPP_HIDE_FROM_ABI constexpr const _Tp& get(const variant<_Types...>&);
|
|||
template <class _Tp, class... _Types>
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr const _Tp&& get(const variant<_Types...>&&);
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___FWD_VARIANT_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Cont>
|
||||
[[nodiscard]] constexpr _LIBCPP_HIDE_FROM_ABI auto data(_Cont& __c) noexcept(noexcept(__c.data()))
|
||||
-> decltype(__c.data()) {
|
||||
|
|
@ -43,8 +43,8 @@ template <class _Ep>
|
|||
return __il.begin();
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_DATA_H
|
||||
|
|
|
|||
|
|
@ -16,15 +16,15 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
struct default_sentinel_t {};
|
||||
inline constexpr default_sentinel_t default_sentinel{};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_DEFAULT_SENTINEL_H
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Cont>
|
||||
[[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto
|
||||
empty(const _Cont& __c) noexcept(noexcept(__c.empty())) -> decltype(__c.empty()) {
|
||||
|
|
@ -37,8 +37,8 @@ template <class _Ep>
|
|||
return __il.size() == 0;
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_EMPTY_H
|
||||
|
|
|
|||
|
|
@ -24,10 +24,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [incrementable.traits]
|
||||
template <class>
|
||||
struct incrementable_traits {};
|
||||
|
|
@ -72,8 +72,8 @@ using iter_difference_t =
|
|||
incrementable_traits<remove_cvref_t<_Ip> >,
|
||||
iterator_traits<remove_cvref_t<_Ip> > >::difference_type;
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_INCREMENTABLE_TRAITS_H
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [iterator.cust.move]
|
||||
|
||||
namespace ranges {
|
||||
|
|
@ -95,10 +95,10 @@ template <__dereferenceable _Tp>
|
|||
}
|
||||
using iter_rvalue_reference_t = decltype(ranges::iter_move(std::declval<_Tp&>()));
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_ITER_MOVE_H
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [iter.cust.swap]
|
||||
|
||||
namespace ranges {
|
||||
|
|
@ -99,10 +99,10 @@ concept indirectly_swappable =
|
|||
ranges::iter_swap(__i2, __i1);
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_ITER_SWAP_H
|
||||
|
|
|
|||
|
|
@ -22,10 +22,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <semiregular _Sent>
|
||||
class move_sentinel {
|
||||
public:
|
||||
|
|
@ -52,10 +52,10 @@ private:
|
|||
|
||||
_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(move_sentinel);
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_MOVE_SENTINEL_H
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <ranges::input_range _Range>
|
||||
using __range_key_type _LIBCPP_NODEBUG = __remove_const_t<typename ranges::range_value_t<_Range>::first_type>;
|
||||
|
||||
|
|
@ -33,8 +33,8 @@ template <ranges::input_range _Range>
|
|||
using __range_to_alloc_type _LIBCPP_NODEBUG =
|
||||
pair<const typename ranges::range_value_t<_Range>::first_type, typename ranges::range_value_t<_Range>::second_type>;
|
||||
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_RANGES_ITERATOR_TRAITS_H
|
||||
|
|
|
|||
|
|
@ -24,10 +24,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [readable.traits]
|
||||
template <class>
|
||||
struct __cond_value_type {};
|
||||
|
|
@ -74,8 +74,8 @@ template <__has_member_value_type _Tp>
|
|||
same_as<remove_cv_t<typename _Tp::element_type>, remove_cv_t<typename _Tp::value_type>>
|
||||
struct indirectly_readable_traits<_Tp> : __cond_value_type<typename _Tp::value_type> {};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_READABLE_TRAITS_H
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 14
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp, size_t _Np>
|
||||
[[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI
|
||||
_LIBCPP_CONSTEXPR_SINCE_CXX17 reverse_iterator<_Tp*> rbegin(_Tp (&__array)[_Np]) {
|
||||
|
|
@ -79,8 +79,8 @@ template <class _Cp>
|
|||
return std::rend(__c);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 14
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 14
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_REVERSE_ACCESS_H
|
||||
|
|
|
|||
|
|
@ -20,10 +20,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Cont>
|
||||
[[nodiscard]]
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr auto size(const _Cont& __c) noexcept(noexcept(__c.size())) -> decltype(__c.size()) {
|
||||
|
|
@ -54,8 +54,8 @@ template <class _Tp, ptrdiff_t _Sz>
|
|||
_LIBCPP_DIAGNOSTIC_POP
|
||||
# endif
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___ITERATOR_SIZE_H
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Real>
|
||||
_LIBCPP_HIDE_FROM_ABI _Real __hermite(unsigned __n, _Real __x) {
|
||||
// The Hermite polynomial H_n(x).
|
||||
|
|
@ -77,8 +77,8 @@ _LIBCPP_HIDE_FROM_ABI double hermite(unsigned __n, _Integer __x) {
|
|||
return std::hermite(__n, static_cast<double>(__x));
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#endif // _LIBCPP___MATH_SPECIAL_FUNCTIONS_H
|
||||
|
|
|
|||
|
|
@ -33,10 +33,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 26
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _ElementType, size_t _ByteAlignment>
|
||||
struct aligned_accessor {
|
||||
static_assert(_ByteAlignment != 0 && (_ByteAlignment & (_ByteAlignment - 1)) == 0,
|
||||
|
|
@ -78,10 +78,10 @@ struct aligned_accessor {
|
|||
}
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 26
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 26
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___MDSPAN_ALIGNED_ACCESSOR_H
|
||||
|
|
|
|||
|
|
@ -20,8 +20,6 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// ================================================================================================================== //
|
||||
// The utilites here are for staying ABI compatible with the legacy `__compressed_pair`. They should not be used //
|
||||
// for new data structures. Use `_LIBCPP_NO_UNIQUE_ADDRESS` for new data structures instead (but make sure you //
|
||||
|
|
@ -59,6 +57,8 @@ _LIBCPP_BEGIN_NAMESPACE_STD
|
|||
|
||||
#ifndef _LIBCPP_ABI_NO_COMPRESSED_PAIR_PADDING
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp>
|
||||
inline const size_t __compressed_pair_alignment = _LIBCPP_ALIGNOF(_Tp);
|
||||
|
||||
|
|
@ -104,6 +104,8 @@ class __compressed_pair_padding<_ToPad, true> {};
|
|||
}
|
||||
# endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#else
|
||||
# define _LIBCPP_COMPRESSED_ELEMENT(T1, Initializer1) _LIBCPP_NO_UNIQUE_ADDRESS T1 Initializer1
|
||||
|
||||
|
|
@ -112,6 +114,4 @@ class __compressed_pair_padding<_ToPad, true> {};
|
|||
_LIBCPP_NO_UNIQUE_ADDRESS T2 Name2
|
||||
#endif // _LIBCPP_ABI_NO_COMPRESSED_PAIR_PADDING
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP___MEMORY_COMPRESSED_PAIR_H
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Smart, class _Pointer, class... _Args>
|
||||
class inout_ptr_t {
|
||||
static_assert(!__is_specialization_v<_Smart, shared_ptr>, "std::shared_ptr<> is not supported with std::inout_ptr.");
|
||||
|
|
@ -100,10 +100,10 @@ template <class _Pointer = void, class _Smart, class... _Args>
|
|||
return std::inout_ptr_t<_Smart, _Ptr, _Args&&...>(__s, std::forward<_Args>(__args)...);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___INOUT_PTR_H
|
||||
|
|
|
|||
|
|
@ -28,10 +28,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Smart, class _Pointer, class... _Args>
|
||||
class out_ptr_t {
|
||||
static_assert(!__is_specialization_v<_Smart, shared_ptr> || sizeof...(_Args) > 0,
|
||||
|
|
@ -92,10 +92,10 @@ template <class _Pointer = void, class _Smart, class... _Args>
|
|||
return std::out_ptr_t<_Smart, _Ptr, _Args&&...>(__s, std::forward<_Args>(__args)...);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___OUT_PTR_H
|
||||
|
|
|
|||
|
|
@ -21,13 +21,13 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_RAW_STORAGE_ITERATOR)
|
||||
|
||||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_RAW_STORAGE_ITERATOR)
|
||||
|
||||
template <class _OutputIterator, class _Tp>
|
||||
class _LIBCPP_DEPRECATED_IN_CXX17 raw_storage_iterator
|
||||
: public __iterator_base<raw_storage_iterator<_OutputIterator, _Tp>, output_iterator_tag, void, void, void, void> {
|
||||
|
|
@ -71,10 +71,10 @@ public:
|
|||
# endif
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_RAW_STORAGE_ITERATOR)
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_RAW_STORAGE_ITERATOR)
|
||||
|
||||
#endif // _LIBCPP___MEMORY_RAW_STORAGE_ITERATOR_H
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
template <class _Tp>
|
||||
inline constexpr bool __is_cv_std_pair = __is_pair_v<remove_cv_t<_Tp>>;
|
||||
|
||||
|
|
@ -202,9 +202,7 @@ __uninitialized_construct_using_allocator(_Type* __ptr, const _Alloc& __alloc, _
|
|||
__uses_allocator_construction_args<_Type>::__apply(__alloc, std::forward<_Args>(__args)...));
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
# if _LIBCPP_STD_VER >= 20
|
||||
|
||||
template <class _Type, class _Alloc, class... _Args>
|
||||
_LIBCPP_HIDE_FROM_ABI constexpr auto uses_allocator_construction_args(const _Alloc& __alloc, _Args&&... __args) noexcept
|
||||
|
|
@ -225,10 +223,12 @@ uninitialized_construct_using_allocator(_Type* __ptr, const _Alloc& __alloc, _Ar
|
|||
return /*--*/ std::__uninitialized_construct_using_allocator(__ptr, __alloc, std::forward<_Args>(__args)...);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
# endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___MEMORY_USES_ALLOCATOR_CONSTRUCTION_H
|
||||
|
|
|
|||
|
|
@ -73,10 +73,10 @@ public:
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// Specialized in __tree & __hash_table for their _NodeType.
|
||||
template <class _NodeType, class _Alloc>
|
||||
struct __generic_container_node_destructor;
|
||||
|
|
@ -200,10 +200,10 @@ struct __insert_return_type {
|
|||
_NodeType node;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___NODE_HANDLE
|
||||
|
|
|
|||
|
|
@ -26,9 +26,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 23
|
||||
namespace ranges {
|
||||
template <typename _Out, typename _Tp>
|
||||
using iota_result = ranges::out_value_result<_Out, _Tp>;
|
||||
|
|
@ -56,10 +57,10 @@ public:
|
|||
inline constexpr auto iota = __iota_fn{};
|
||||
} // namespace ranges
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 23
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___NUMERIC_RANGES_IOTA_H
|
||||
|
|
|
|||
|
|
@ -22,9 +22,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
template <class _InputIterator, class _Tp, class _BinaryOp>
|
||||
[[nodiscard]] _LIBCPP_HIDE_FROM_ABI
|
||||
_LIBCPP_CONSTEXPR_SINCE_CXX20 _Tp reduce(_InputIterator __first, _InputIterator __last, _Tp __init, _BinaryOp __b) {
|
||||
|
|
@ -44,10 +45,11 @@ template <class _InputIterator>
|
|||
reduce(_InputIterator __first, _InputIterator __last) {
|
||||
return std::reduce(__first, __last, typename iterator_traits<_InputIterator>::value_type{});
|
||||
}
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___NUMERIC_REDUCE_H
|
||||
|
|
|
|||
|
|
@ -21,9 +21,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 17
|
||||
template <class _InputIterator, class _Tp, class _BinaryOp, class _UnaryOp>
|
||||
[[nodiscard]] _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20
|
||||
_Tp transform_reduce(_InputIterator __first, _InputIterator __last, _Tp __init, _BinaryOp __b, _UnaryOp __u) {
|
||||
|
|
@ -50,10 +51,11 @@ template <class _InputIterator1, class _InputIterator2, class _Tp>
|
|||
transform_reduce(_InputIterator1 __first1, _InputIterator1 __last1, _InputIterator2 __first2, _Tp __init) {
|
||||
return std::transform_reduce(__first1, __last1, __first2, std::move(__init), std::plus<>(), std::multiplies<>());
|
||||
}
|
||||
#endif
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 17
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___NUMERIC_TRANSFORM_REDUCE_H
|
||||
|
|
|
|||
|
|
@ -19,11 +19,11 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
#if _LIBCPP_HAS_RANDOM_DEVICE
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
|
||||
|
||||
#if _LIBCPP_HAS_RANDOM_DEVICE
|
||||
|
||||
class _LIBCPP_EXPORTED_FROM_ABI random_device {
|
||||
# ifdef _LIBCPP_USING_DEV_RANDOM
|
||||
int __f_;
|
||||
|
|
@ -69,11 +69,11 @@ public:
|
|||
void operator=(const random_device&) = delete;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_HAS_RANDOM_DEVICE
|
||||
|
||||
_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_HAS_RANDOM_DEVICE
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___RANDOM_RANDOM_DEVICE_H
|
||||
|
|
|
|||
|
|
@ -23,10 +23,10 @@
|
|||
_LIBCPP_PUSH_MACROS
|
||||
#include <__undef_macros>
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
// [rand.req.urng]
|
||||
template <class _Gen>
|
||||
concept uniform_random_bit_generator = invocable<_Gen&> && unsigned_integral<invoke_result_t<_Gen&>> && requires {
|
||||
|
|
@ -35,10 +35,10 @@ concept uniform_random_bit_generator = invocable<_Gen&> && unsigned_integral<inv
|
|||
requires bool_constant<(_Gen::min() < _Gen::max())>::value;
|
||||
};
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_POP_MACROS
|
||||
|
||||
#endif // _LIBCPP___RANDOM_UNIFORM_RANDOM_BIT_GENERATOR_H
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace ranges {
|
||||
template <class _Tp>
|
||||
concept __can_borrow = is_lvalue_reference_v<_Tp> || enable_borrowed_range<remove_cvref_t<_Tp>>;
|
||||
|
|
@ -203,8 +203,8 @@ inline constexpr auto cend = __cend::__fn{};
|
|||
} // namespace __cpo
|
||||
} // namespace ranges
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___RANGES_ACCESS_H
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@
|
|||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#if _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
namespace ranges::views {
|
||||
|
||||
namespace __all {
|
||||
|
|
@ -71,8 +71,8 @@ using all_t = decltype(views::all(std::declval<_Range>()));
|
|||
|
||||
} // namespace ranges::views
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_STD_VER >= 20
|
||||
|
||||
#endif // _LIBCPP___RANGES_ALL_H
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue