Lines Matching refs:constexpr
24 inline constexpr nullopt_t nullopt(unspecified );
31 constexpr bool operator==(const optional<T>&, const optional<U>&);
33 constexpr bool operator!=(const optional<T>&, const optional<U>&);
35 constexpr bool operator<(const optional<T>&, const optional<U>&);
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>&);
44 template <class T> constexpr bool operator==(const optional<T>&, nullopt_t) noexcept;
45 template <class T> constexpr bool operator==(nullopt_t, const optional<T>&) noexcept;
46 template <class T> constexpr bool operator!=(const optional<T>&, nullopt_t) noexcept;
47 template <class T> constexpr bool operator!=(nullopt_t, const optional<T>&) noexcept;
48 template <class T> constexpr bool operator<(const optional<T>&, nullopt_t) noexcept;
49 template <class T> constexpr bool operator<(nullopt_t, const optional<T>&) noexcept;
50 template <class T> constexpr bool operator<=(const optional<T>&, nullopt_t) noexcept;
51 template <class T> constexpr bool operator<=(nullopt_t, const optional<T>&) noexcept;
52 template <class T> constexpr bool operator>(const optional<T>&, nullopt_t) noexcept;
53 template <class T> constexpr bool operator>(nullopt_t, const optional<T>&) noexcept;
54 template <class T> constexpr bool operator>=(const optional<T>&, nullopt_t) noexcept;
55 template <class T> constexpr bool operator>=(nullopt_t, const optional<T>&) noexcept;
58 template <class T, class U> constexpr bool operator==(const optional<T>&, const U&);
59 template <class T, class U> constexpr bool operator==(const T&, const optional<U>&);
60 template <class T, class U> constexpr bool operator!=(const optional<T>&, const U&);
61 template <class T, class U> constexpr bool operator!=(const T&, const optional<U>&);
62 template <class T, class U> constexpr bool operator<(const optional<T>&, const U&);
63 template <class T, class U> constexpr bool operator<(const T&, const optional<U>&);
64 template <class T, class U> constexpr bool operator<=(const optional<T>&, const U&);
65 template <class T, class U> constexpr bool operator<=(const T&, const optional<U>&);
66 template <class T, class U> constexpr bool operator>(const optional<T>&, const U&);
67 template <class T, class U> constexpr bool operator>(const T&, const optional<U>&);
68 template <class T, class U> constexpr bool operator>=(const optional<T>&, const U&);
69 template <class T, class U> constexpr bool operator>=(const T&, const optional<U>&);
72 …template <class T> void swap(optional<T>&, optional<T>&) noexcept(see below ); // constexpr in C++…
73 template <class T> constexpr optional<see below > make_optional(T&&);
75 constexpr optional<T> make_optional(Args&&... args);
77 constexpr optional<T> make_optional(initializer_list<U> il, Args&&... args);
88 constexpr optional() noexcept;
89 constexpr optional(nullopt_t) noexcept;
92 template <class... Args> constexpr explicit optional(in_place_t, Args &&...);
94 constexpr explicit optional(in_place_t, initializer_list<U>, Args &&...);
96 constexpr EXPLICIT optional(U &&);
98 EXPLICIT optional(const optional<U> &); // constexpr in C++20
100 EXPLICIT optional(optional<U> &&); // constexpr in C++20
103 ~optional(); // constexpr in C++20
106 optional &operator=(nullopt_t) noexcept; // constexpr in C++20
107 optional &operator=(const optional &); // constexpr in C++20
108 optional &operator=(optional &&) noexcept(see below); // constexpr in C++20
109 template <class U = T> optional &operator=(U &&); // constexpr in C++20
110 template <class U> optional &operator=(const optional<U> &); // constexpr in C++20
111 template <class U> optional &operator=(optional<U> &&); // constexpr in C++20
112 template <class... Args> T& emplace(Args &&...); // constexpr in C++20
114 T& emplace(initializer_list<U>, Args &&...); // constexpr in C++20
117 void swap(optional &) noexcept(see below ); // constexpr in C++20
120 constexpr T const *operator->() const;
121 constexpr T *operator->();
122 constexpr T const &operator*() const &;
123 constexpr T &operator*() &;
124 constexpr T &&operator*() &&;
125 constexpr const T &&operator*() const &&;
126 constexpr explicit operator bool() const noexcept;
127 constexpr bool has_value() const noexcept;
128 constexpr T const &value() const &;
129 constexpr T &value() &;
130 constexpr T &&value() &&;
131 constexpr const T &&value() const &&;
132 template <class U> constexpr T value_or(U &&) const &;
133 template <class U> constexpr T value_or(U &&) &&;
136 void reset() noexcept; // constexpr in C++20
202 _LIBCPP_INLINE_VISIBILITY constexpr explicit nullopt_t(__secret_tag, __secret_tag) noexcept {}
205 _LIBCPP_INLINE_VAR constexpr nullopt_t nullopt{nullopt_t::__secret_tag{}, nullopt_t::__secret_tag{}…
231 constexpr __optional_destruct_base() noexcept
237 constexpr explicit __optional_destruct_base(in_place_t, _Args&&... __args)
266 constexpr __optional_destruct_base() noexcept
272 constexpr explicit __optional_destruct_base(in_place_t, _Args&&... __args)
294 constexpr bool has_value() const noexcept
300 constexpr value_type& __get() & noexcept
305 constexpr const value_type& __get() const& noexcept
310 constexpr value_type&& __get() && noexcept
315 constexpr const value_type&& __get() const&& noexcept
371 static constexpr bool __can_bind_reference() {
387 constexpr __optional_storage_base() noexcept
392 constexpr explicit __optional_storage_base(in_place_t, _UArg&& __uarg)
404 constexpr bool has_value() const noexcept
408 constexpr value_type& __get() const& noexcept
412 constexpr value_type&& __get() const&& noexcept
615 static constexpr bool __enable_implicit() {
621 static constexpr bool __enable_explicit() {
654 static constexpr bool __enable_implicit() {
659 static constexpr bool __enable_explicit() {
664 static constexpr bool __enable_assign() {
693 _LIBCPP_INLINE_VISIBILITY constexpr optional() noexcept {}
694 _LIBCPP_INLINE_VISIBILITY constexpr optional(const optional&) = default;
695 _LIBCPP_INLINE_VISIBILITY constexpr optional(optional&&) = default;
696 _LIBCPP_INLINE_VISIBILITY constexpr optional(nullopt_t) noexcept {}
706 constexpr explicit optional(_InPlaceT, _Args&&... __args)
713 constexpr explicit optional(in_place_t, initializer_list<_Up> __il, _Args&&... __args)
720 constexpr optional(_Up&& __v)
727 constexpr explicit optional(_Up&& __v)
881 constexpr
894 constexpr
907 constexpr
916 constexpr
925 constexpr
934 constexpr
943 constexpr explicit operator bool() const noexcept { return has_value(); }
950 constexpr value_type const& value() const&
959 constexpr value_type& value() &
968 constexpr value_type&& value() &&
977 constexpr value_type const&& value() const&&
986 constexpr value_type value_or(_Up&& __v) const&
998 constexpr value_type value_or(_Up&& __v) &&
1021 static constexpr _Up*
1035 _LIBCPP_INLINE_VISIBILITY constexpr
1051 _LIBCPP_INLINE_VISIBILITY constexpr
1067 _LIBCPP_INLINE_VISIBILITY constexpr
1083 _LIBCPP_INLINE_VISIBILITY constexpr
1099 _LIBCPP_INLINE_VISIBILITY constexpr
1115 _LIBCPP_INLINE_VISIBILITY constexpr
1132 _LIBCPP_INLINE_VISIBILITY constexpr
1140 _LIBCPP_INLINE_VISIBILITY constexpr
1148 _LIBCPP_INLINE_VISIBILITY constexpr
1156 _LIBCPP_INLINE_VISIBILITY constexpr
1164 _LIBCPP_INLINE_VISIBILITY constexpr
1172 _LIBCPP_INLINE_VISIBILITY constexpr
1180 _LIBCPP_INLINE_VISIBILITY constexpr
1188 _LIBCPP_INLINE_VISIBILITY constexpr
1196 _LIBCPP_INLINE_VISIBILITY constexpr
1204 _LIBCPP_INLINE_VISIBILITY constexpr
1212 _LIBCPP_INLINE_VISIBILITY constexpr
1220 _LIBCPP_INLINE_VISIBILITY constexpr
1229 _LIBCPP_INLINE_VISIBILITY constexpr
1241 _LIBCPP_INLINE_VISIBILITY constexpr
1253 _LIBCPP_INLINE_VISIBILITY constexpr
1265 _LIBCPP_INLINE_VISIBILITY constexpr
1277 _LIBCPP_INLINE_VISIBILITY constexpr
1289 _LIBCPP_INLINE_VISIBILITY constexpr
1301 _LIBCPP_INLINE_VISIBILITY constexpr
1313 _LIBCPP_INLINE_VISIBILITY constexpr
1325 _LIBCPP_INLINE_VISIBILITY constexpr
1337 _LIBCPP_INLINE_VISIBILITY constexpr
1349 _LIBCPP_INLINE_VISIBILITY constexpr
1361 _LIBCPP_INLINE_VISIBILITY constexpr
1385 _LIBCPP_INLINE_VISIBILITY constexpr
1392 _LIBCPP_INLINE_VISIBILITY constexpr
1399 _LIBCPP_INLINE_VISIBILITY constexpr