Lines Matching refs:bool
37 constexpr bool operator==(const optional<T>&, const optional<U>&);
39 constexpr bool operator!=(const optional<T>&, const optional<U>&);
41 constexpr bool operator<(const optional<T>&, const optional<U>&);
43 constexpr bool operator>(const optional<T>&, const optional<U>&);
45 constexpr bool operator<=(const optional<T>&, const optional<U>&);
47 constexpr bool operator>=(const optional<T>&, const optional<U>&);
53 template<class T> constexpr bool operator==(const optional<T>&, nullopt_t) noexcept;
54 …template<class T> constexpr bool operator==(nullopt_t, const optional<T>&) noexcept; // until C++17
55 …template<class T> constexpr bool operator!=(const optional<T>&, nullopt_t) noexcept; // until C++17
56 …template<class T> constexpr bool operator!=(nullopt_t, const optional<T>&) noexcept; // until C++17
57 …template<class T> constexpr bool operator<(const optional<T>&, nullopt_t) noexcept; // until C++17
58 …template<class T> constexpr bool operator<(nullopt_t, const optional<T>&) noexcept; // until C++17
59 …template<class T> constexpr bool operator<=(const optional<T>&, nullopt_t) noexcept; // until C++17
60 …template<class T> constexpr bool operator<=(nullopt_t, const optional<T>&) noexcept; // until C++17
61 …template<class T> constexpr bool operator>(const optional<T>&, nullopt_t) noexcept; // until C++17
62 …template<class T> constexpr bool operator>(nullopt_t, const optional<T>&) noexcept; // until C++17
63 …template<class T> constexpr bool operator>=(const optional<T>&, nullopt_t) noexcept; // until C++17
64 …template<class T> constexpr bool operator>=(nullopt_t, const optional<T>&) noexcept; // until C++17
69 template<class T, class U> constexpr bool operator==(const optional<T>&, const U&);
70 template<class T, class U> constexpr bool operator==(const T&, const optional<U>&);
71 template<class T, class U> constexpr bool operator!=(const optional<T>&, const U&);
72 template<class T, class U> constexpr bool operator!=(const T&, const optional<U>&);
73 template<class T, class U> constexpr bool operator<(const optional<T>&, const U&);
74 template<class T, class U> constexpr bool operator<(const T&, const optional<U>&);
75 template<class T, class U> constexpr bool operator<=(const optional<T>&, const U&);
76 template<class T, class U> constexpr bool operator<=(const T&, const optional<U>&);
77 template<class T, class U> constexpr bool operator>(const optional<T>&, const U&);
78 template<class T, class U> constexpr bool operator>(const T&, const optional<U>&);
79 template<class T, class U> constexpr bool operator>=(const optional<T>&, const U&);
80 template<class T, class U> constexpr bool operator>=(const T&, const optional<U>&);
145 constexpr explicit operator bool() const noexcept;
146 constexpr bool has_value() const noexcept;
284 template <class _Tp, bool = is_trivially_destructible<_Tp>::value>
295 bool __engaged_;
331 bool __engaged_;
353 template <class _Tp, bool = is_reference<_Tp>::value>
359 _LIBCPP_HIDE_FROM_ABI constexpr bool has_value() const noexcept { return this->__engaged_; }
403 static _LIBCPP_HIDE_FROM_ABI constexpr bool __can_bind_reference() {
409 integral_constant<bool,
430 _LIBCPP_HIDE_FROM_ABI constexpr bool has_value() const noexcept { return __value_ != nullptr; }
465 template <class _Tp, bool = is_trivially_copy_constructible<_Tp>::value>
485 template <class _Tp, bool = is_trivially_move_constructible<_Tp>::value>
508 … bool = is_trivially_destructible<_Tp>::value && is_trivially_copy_constructible<_Tp>::value &&
532 … bool = is_trivially_destructible<_Tp>::value && is_trivially_move_constructible<_Tp>::value &&
603 _LIBCPP_HIDE_FROM_ABI static constexpr bool __enable_implicit() {
608 _LIBCPP_HIDE_FROM_ABI static constexpr bool __enable_explicit() {
615 … (!is_same_v<remove_cv_t<_Tp>, bool> || !__is_std_optional<__remove_cvref_t<_Up>>::value),
637 _LIBCPP_HIDE_FROM_ABI static constexpr bool __enable_implicit() {
639 (is_same_v<remove_cv_t<_Tp>, bool> || !__check_constructible_from_opt<_Up>::value);
642 _LIBCPP_HIDE_FROM_ABI static constexpr bool __enable_explicit() {
644 (is_same_v<remove_cv_t<_Tp>, bool> || !__check_constructible_from_opt<_Up>::value);
647 _LIBCPP_HIDE_FROM_ABI static constexpr bool __enable_assign() {
820 _LIBCPP_HIDE_FROM_ABI constexpr explicit operator bool() const noexcept { return has_value(); }
986 is_convertible_v<decltype(std::declval<const _Tp&>() == std::declval<const _Up&>()), bool>,
987 bool >
989 if (static_cast<bool>(__x) != static_cast<bool>(__y))
991 if (!static_cast<bool>(__x))
998 is_convertible_v<decltype(std::declval<const _Tp&>() != std::declval<const _Up&>()), bool>,
999 bool >
1001 if (static_cast<bool>(__x) != static_cast<bool>(__y))
1003 if (!static_cast<bool>(__x))
1010 is_convertible_v<decltype(std::declval<const _Tp&>() < std::declval<const _Up&>()), bool>,
1011 bool >
1013 if (!static_cast<bool>(__y))
1015 if (!static_cast<bool>(__x))
1022 is_convertible_v<decltype(std::declval<const _Tp&>() > std::declval<const _Up&>()), bool>,
1023 bool >
1025 if (!static_cast<bool>(__x))
1027 if (!static_cast<bool>(__y))
1034 is_convertible_v<decltype(std::declval<const _Tp&>() <= std::declval<const _Up&>()), bool>,
1035 bool >
1037 if (!static_cast<bool>(__x))
1039 if (!static_cast<bool>(__y))
1046 is_convertible_v<decltype(std::declval<const _Tp&>() >= std::declval<const _Up&>()), bool>,
1047 bool >
1049 if (!static_cast<bool>(__y))
1051 if (!static_cast<bool>(__x))
1070 _LIBCPP_HIDE_FROM_ABI constexpr bool operator==(const optional<_Tp>& __x, nullopt_t) noexcept {
1071 return !static_cast<bool>(__x);
1077 _LIBCPP_HIDE_FROM_ABI constexpr bool operator==(nullopt_t, const optional<_Tp>& __x) noexcept {
1078 return !static_cast<bool>(__x);
1082 _LIBCPP_HIDE_FROM_ABI constexpr bool operator!=(const optional<_Tp>& __x, nullopt_t) noexcept {
1083 return static_cast<bool>(__x);
1087 _LIBCPP_HIDE_FROM_ABI constexpr bool operator!=(nullopt_t, const optional<_Tp>& __x) noexcept {
1088 return static_cast<bool>(__x);
1092 _LIBCPP_HIDE_FROM_ABI constexpr bool operator<(const optional<_Tp>&, nullopt_t) noexcept {
1097 _LIBCPP_HIDE_FROM_ABI constexpr bool operator<(nullopt_t, const optional<_Tp>& __x) noexcept {
1098 return static_cast<bool>(__x);
1102 _LIBCPP_HIDE_FROM_ABI constexpr bool operator<=(const optional<_Tp>& __x, nullopt_t) noexcept {
1103 return !static_cast<bool>(__x);
1107 _LIBCPP_HIDE_FROM_ABI constexpr bool operator<=(nullopt_t, const optional<_Tp>&) noexcept {
1112 _LIBCPP_HIDE_FROM_ABI constexpr bool operator>(const optional<_Tp>& __x, nullopt_t) noexcept {
1113 return static_cast<bool>(__x);
1117 _LIBCPP_HIDE_FROM_ABI constexpr bool operator>(nullopt_t, const optional<_Tp>&) noexcept {
1122 _LIBCPP_HIDE_FROM_ABI constexpr bool operator>=(const optional<_Tp>&, nullopt_t) noexcept {
1127 _LIBCPP_HIDE_FROM_ABI constexpr bool operator>=(nullopt_t, const optional<_Tp>& __x) noexcept {
1128 return !static_cast<bool>(__x);
1143 is_convertible_v<decltype(std::declval<const _Tp&>() == std::declval<const _Up&>()), bool>,
1144 bool >
1146 return static_cast<bool>(__x) ? *__x == __v : false;
1151 is_convertible_v<decltype(std::declval<const _Tp&>() == std::declval<const _Up&>()), bool>,
1152 bool >
1154 return static_cast<bool>(__x) ? __v == *__x : false;
1159 is_convertible_v<decltype(std::declval<const _Tp&>() != std::declval<const _Up&>()), bool>,
1160 bool >
1162 return static_cast<bool>(__x) ? *__x != __v : true;
1167 is_convertible_v<decltype(std::declval<const _Tp&>() != std::declval<const _Up&>()), bool>,
1168 bool >
1170 return static_cast<bool>(__x) ? __v != *__x : true;
1175 is_convertible_v<decltype(std::declval<const _Tp&>() < std::declval<const _Up&>()), bool>,
1176 bool >
1178 return static_cast<bool>(__x) ? *__x < __v : true;
1183 is_convertible_v<decltype(std::declval<const _Tp&>() < std::declval<const _Up&>()), bool>,
1184 bool >
1186 return static_cast<bool>(__x) ? __v < *__x : false;
1191 is_convertible_v<decltype(std::declval<const _Tp&>() <= std::declval<const _Up&>()), bool>,
1192 bool >
1194 return static_cast<bool>(__x) ? *__x <= __v : true;
1199 is_convertible_v<decltype(std::declval<const _Tp&>() <= std::declval<const _Up&>()), bool>,
1200 bool >
1202 return static_cast<bool>(__x) ? __v <= *__x : false;
1207 is_convertible_v<decltype(std::declval<const _Tp&>() > std::declval<const _Up&>()), bool>,
1208 bool >
1210 return static_cast<bool>(__x) ? *__x > __v : false;
1215 is_convertible_v<decltype(std::declval<const _Tp&>() > std::declval<const _Up&>()), bool>,
1216 bool >
1218 return static_cast<bool>(__x) ? __v > *__x : true;
1223 is_convertible_v<decltype(std::declval<const _Tp&>() >= std::declval<const _Up&>()), bool>,
1224 bool >
1226 return static_cast<bool>(__x) ? *__x >= __v : false;
1231 is_convertible_v<decltype(std::declval<const _Tp&>() >= std::declval<const _Up&>()), bool>,
1232 bool >
1234 return static_cast<bool>(__x) ? __v >= *__x : true;
1278 return static_cast<bool>(__opt) ? hash<remove_const_t<_Tp>>()(*__opt) : 0;