Horizon
Loading...
Searching...
No Matches
ranges::optional< T > Struct Template Reference
Inheritance diagram for ranges::optional< T >:

Public Types

using value_type = meta::_t<std::remove_cv<T>>

Public Member Functions

 CPP_assert (destructible< T >)
constexpr optional (nullopt_t) noexcept
 optional (optional const &)=default
 optional (optional &&)=default
 template (typename E, typename... Args)() const expr explicit optional(in_place_t
std::initializer_list< E > Args &&args noexcept (std::is_nothrow_constructible< T, std::initializer_list< E > &, Args... >::value)
 template (typename U=T)(AND(!same_as< detail
 template (typename U=T)(AND(!same_as< detail
 template (typename U)(AND const ructible_from< T
U const &AND convertible_to< U const &, T > optional (optional< U > const &that)
 template (typename U)(AND const ructible_from< T
U const & AND (!convertible_to< U const &, T >)) explicit optional(optional< U > const &that)
 template (typename U)(AND const ructible_from< T
U AND convertible_to< U, T > optional (optional< U > &&that)
 template (typename U)(AND const ructible_from< T
AND (!convertible_to< U, T >)) explicit optional(optional< U > &&that)
constexpr optional & operator= (nullopt_t) noexcept
optional & operator= (optional const &)=default
optional & operator= (optional &&)=default
 template (typename U=T)(AND(!(satisfies< T
std::is_scalar &&same_as< T, detail::decay_t< U > > AND constructible_from< T, U > AND assignable_from< T &, U > constexpr optional & operator= (U &&u) noexcept(std::is_nothrow_constructible< T, U >::value &&std::is_nothrow_assignable< T &, U >::value)
 template (typename U)(AND const ructible_from< T
const U &AND assignable_from< T &, const U & > constexpr optional & operator= (optional< U > const &that)
 template (typename U)(AND const ructible_from< T
U AND assignable_from< T &, U > constexpr optional & operator= (optional< U > &&that)
 template (typename I)() T &emplace_deref(const I &it)
 template (typename... Args)() T &emplace(Args &&... args) noexcept(std::is_nothrow_constructible< T, Args... >::value)
 template (typename E, typename... Args)() T &emplace(std
constexpr operator bool () const noexcept
constexpr T const & value () const &
constexpr T & value () &
constexpr T const && value () const &&
constexpr T && value () &&
 template (typename U)(AND convertible_to< U
T constexpr T value_or (U &&u) const &
 template (typename U)(AND convertible_to< U
T constexpr T value_or (U &&u) &&

Public Attributes

std::initializer_list< E > il

The documentation for this struct was generated from the following file: