Lines Matching refs:constexpr
23 constexpr bool is_eq (partial_ordering cmp) noexcept { return cmp == 0; }
24 constexpr bool is_neq (partial_ordering cmp) noexcept { return cmp != 0; }
25 constexpr bool is_lt (partial_ordering cmp) noexcept { return cmp < 0; }
26 constexpr bool is_lteq(partial_ordering cmp) noexcept { return cmp <= 0; }
27 constexpr bool is_gt (partial_ordering cmp) noexcept { return cmp > 0; }
28 constexpr bool is_gteq(partial_ordering cmp) noexcept { return cmp >= 0; }
39 template<class T> constexpr strong_ordering strong_order(const T& a, const T& b);
40 template<class T> constexpr weak_ordering weak_order(const T& a, const T& b);
41 template<class T> constexpr partial_ordering partial_order(const T& a, const T& b);
53 friend constexpr bool operator==(partial_ordering v, unspecified) noexcept;
54 friend constexpr bool operator==(partial_ordering v, partial_ordering w) noexcept = default;
55 friend constexpr bool operator< (partial_ordering v, unspecified) noexcept;
56 friend constexpr bool operator> (partial_ordering v, unspecified) noexcept;
57 friend constexpr bool operator<=(partial_ordering v, unspecified) noexcept;
58 friend constexpr bool operator>=(partial_ordering v, unspecified) noexcept;
59 friend constexpr bool operator< (unspecified, partial_ordering v) noexcept;
60 friend constexpr bool operator> (unspecified, partial_ordering v) noexcept;
61 friend constexpr bool operator<=(unspecified, partial_ordering v) noexcept;
62 friend constexpr bool operator>=(unspecified, partial_ordering v) noexcept;
63 friend constexpr partial_ordering operator<=>(partial_ordering v, unspecified) noexcept;
64 friend constexpr partial_ordering operator<=>(unspecified, partial_ordering v) noexcept;
76 constexpr operator partial_ordering() const noexcept;
79 friend constexpr bool operator==(weak_ordering v, unspecified) noexcept;
80 friend constexpr bool operator==(weak_ordering v, weak_ordering w) noexcept = default;
81 friend constexpr bool operator< (weak_ordering v, unspecified) noexcept;
82 friend constexpr bool operator> (weak_ordering v, unspecified) noexcept;
83 friend constexpr bool operator<=(weak_ordering v, unspecified) noexcept;
84 friend constexpr bool operator>=(weak_ordering v, unspecified) noexcept;
85 friend constexpr bool operator< (unspecified, weak_ordering v) noexcept;
86 friend constexpr bool operator> (unspecified, weak_ordering v) noexcept;
87 friend constexpr bool operator<=(unspecified, weak_ordering v) noexcept;
88 friend constexpr bool operator>=(unspecified, weak_ordering v) noexcept;
89 friend constexpr weak_ordering operator<=>(weak_ordering v, unspecified) noexcept;
90 friend constexpr weak_ordering operator<=>(unspecified, weak_ordering v) noexcept;
103 constexpr operator partial_ordering() const noexcept;
104 constexpr operator weak_ordering() const noexcept;
107 friend constexpr bool operator==(strong_ordering v, unspecified) noexcept;
108 friend constexpr bool operator==(strong_ordering v, strong_ordering w) noexcept = default;
109 friend constexpr bool operator< (strong_ordering v, unspecified) noexcept;
110 friend constexpr bool operator> (strong_ordering v, unspecified) noexcept;
111 friend constexpr bool operator<=(strong_ordering v, unspecified) noexcept;
112 friend constexpr bool operator>=(strong_ordering v, unspecified) noexcept;
113 friend constexpr bool operator< (unspecified, strong_ordering v) noexcept;
114 friend constexpr bool operator> (unspecified, strong_ordering v) noexcept;
115 friend constexpr bool operator<=(unspecified, strong_ordering v) noexcept;
116 friend constexpr bool operator>=(unspecified, strong_ordering v) noexcept;
117 friend constexpr strong_ordering operator<=>(strong_ordering v, unspecified) noexcept;
118 friend constexpr strong_ordering operator<=>(unspecified, strong_ordering v) noexcept;
156 inline constexpr bool __one_of_v = (is_same_v<_Tp, _Args> || ...);
170 explicit constexpr partial_ordering(_EqResult __v) noexcept
174 explicit constexpr partial_ordering(_OrdResult __v) noexcept
178 explicit constexpr partial_ordering(_NCmpResult __v) noexcept
181 constexpr bool __is_ordered() const noexcept {
192 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator==(partial_ordering, partial_ordering) noe…
194 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator==(partial_ordering __v, _CmpUnspecifiedPa…
198 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator< (partial_ordering __v, _CmpUnspecifiedPa…
202 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator<=(partial_ordering __v, _CmpUnspecifiedPa…
206 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator> (partial_ordering __v, _CmpUnspecifiedPa…
210 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator>=(partial_ordering __v, _CmpUnspecifiedPa…
214 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator< (_CmpUnspecifiedParam, partial_ordering …
218 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator<=(_CmpUnspecifiedParam, partial_ordering …
222 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator> (_CmpUnspecifiedParam, partial_ordering …
226 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator>=(_CmpUnspecifiedParam, partial_ordering …
230 …_LIBCPP_INLINE_VISIBILITY friend constexpr partial_ordering operator<=>(partial_ordering __v, _Cmp…
234 …_LIBCPP_INLINE_VISIBILITY friend constexpr partial_ordering operator<=>(_CmpUnspecifiedParam, part…
241 _LIBCPP_INLINE_VAR constexpr partial_ordering partial_ordering::less(_OrdResult::__less);
242 _LIBCPP_INLINE_VAR constexpr partial_ordering partial_ordering::equivalent(_EqResult::__equiv);
243 _LIBCPP_INLINE_VAR constexpr partial_ordering partial_ordering::greater(_OrdResult::__greater);
244 _LIBCPP_INLINE_VAR constexpr partial_ordering partial_ordering::unordered(_NCmpResult ::__unordered…
250 explicit constexpr weak_ordering(_EqResult __v) noexcept : __value_(_ValueT(__v)) {}
252 explicit constexpr weak_ordering(_OrdResult __v) noexcept : __value_(_ValueT(__v)) {}
260 constexpr operator partial_ordering() const noexcept {
266 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator==(weak_ordering, weak_ordering) noexcept …
268 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator==(weak_ordering __v, _CmpUnspecifiedParam…
272 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator< (weak_ordering __v, _CmpUnspecifiedParam…
276 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator<=(weak_ordering __v, _CmpUnspecifiedParam…
280 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator> (weak_ordering __v, _CmpUnspecifiedParam…
284 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator>=(weak_ordering __v, _CmpUnspecifiedParam…
288 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator< (_CmpUnspecifiedParam, weak_ordering __v…
292 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator<=(_CmpUnspecifiedParam, weak_ordering __v…
296 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator> (_CmpUnspecifiedParam, weak_ordering __v…
300 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator>=(_CmpUnspecifiedParam, weak_ordering __v…
304 …_LIBCPP_INLINE_VISIBILITY friend constexpr weak_ordering operator<=>(weak_ordering __v, _CmpUnspec…
308 …_LIBCPP_INLINE_VISIBILITY friend constexpr weak_ordering operator<=>(_CmpUnspecifiedParam, weak_or…
316 _LIBCPP_INLINE_VAR constexpr weak_ordering weak_ordering::less(_OrdResult::__less);
317 _LIBCPP_INLINE_VAR constexpr weak_ordering weak_ordering::equivalent(_EqResult::__equiv);
318 _LIBCPP_INLINE_VAR constexpr weak_ordering weak_ordering::greater(_OrdResult::__greater);
323 explicit constexpr strong_ordering(_EqResult __v) noexcept : __value_(_ValueT(__v)) {}
325 explicit constexpr strong_ordering(_OrdResult __v) noexcept : __value_(_ValueT(__v)) {}
335 constexpr operator partial_ordering() const noexcept {
341 constexpr operator weak_ordering() const noexcept {
347 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator==(strong_ordering, strong_ordering) noexc…
349 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator==(strong_ordering __v, _CmpUnspecifiedPar…
353 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator< (strong_ordering __v, _CmpUnspecifiedPar…
357 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator<=(strong_ordering __v, _CmpUnspecifiedPar…
361 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator> (strong_ordering __v, _CmpUnspecifiedPar…
365 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator>=(strong_ordering __v, _CmpUnspecifiedPar…
369 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator< (_CmpUnspecifiedParam, strong_ordering _…
373 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator<=(_CmpUnspecifiedParam, strong_ordering _…
377 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator> (_CmpUnspecifiedParam, strong_ordering _…
381 …_LIBCPP_INLINE_VISIBILITY friend constexpr bool operator>=(_CmpUnspecifiedParam, strong_ordering _…
385 …_LIBCPP_INLINE_VISIBILITY friend constexpr strong_ordering operator<=>(strong_ordering __v, _CmpUn…
389 …_LIBCPP_INLINE_VISIBILITY friend constexpr strong_ordering operator<=>(_CmpUnspecifiedParam, stron…
397 _LIBCPP_INLINE_VAR constexpr strong_ordering strong_ordering::less(_OrdResult::__less);
398 _LIBCPP_INLINE_VAR constexpr strong_ordering strong_ordering::equal(_EqResult::__equal);
399 _LIBCPP_INLINE_VAR constexpr strong_ordering strong_ordering::equivalent(_EqResult::__equiv);
400 _LIBCPP_INLINE_VAR constexpr strong_ordering strong_ordering::greater(_OrdResult::__greater);
404 constexpr bool is_lt(partial_ordering __cmp) noexcept { return __cmp < 0; }
407 constexpr bool is_lteq(partial_ordering __cmp) noexcept { return __cmp <= 0; }
410 constexpr bool is_gt(partial_ordering __cmp) noexcept { return __cmp > 0; }
413 constexpr bool is_gteq(partial_ordering __cmp) noexcept { return __cmp >= 0; }
427 constexpr _ClassifyCompCategory __type_to_enum() noexcept {
438 constexpr _ClassifyCompCategory
453 constexpr auto __get_comp_type() {
455 constexpr _CCC __type_kinds[] = {_StrongOrd, __type_to_enum<_Ts>()...};
456 constexpr _CCC _Cat = __compute_comp_type(__type_kinds);
457 if constexpr (_Cat == _None)
459 else if constexpr (_Cat == _PartialOrd)
461 else if constexpr (_Cat == _WeakOrd)
463 else if constexpr (_Cat == _StrongOrd)
481 template<class _Tp> constexpr strong_ordering strong_order(const _Tp& __lhs, const _Tp& __rhs);
482 template<class _Tp> constexpr weak_ordering weak_order(const _Tp& __lhs, const _Tp& __rhs);
483 template<class _Tp> constexpr partial_ordering partial_order(const _Tp& __lhs, const _Tp& __rhs);