Inherits optional< Type >.
|
SIV3D_NODISCARD_CXX20 | Optional ()=default |
|
constexpr SIV3D_NODISCARD_CXX20 | Optional (None_t) |
|
SIV3D_NODISCARD_CXX20 | Optional (const Optional &other)=default |
|
Optional & | operator= (None_t) noexcept |
|
constexpr Optional & | operator= (const Optional &other) |
|
constexpr Optional & | operator= (Optional &&other) noexcept(std::is_nothrow_move_assignable_v< Type > &&std::is_nothrow_move_constructible_v< Type >) |
|
template<class U = Type> |
Optional & | operator= (U &&value) |
|
template<class U > |
Optional & | operator= (const Optional< U > &other) |
|
template<class U > |
Optional & | operator= (Optional< U > &&other) |
|
void | swap (Optional &other) noexcept(std::is_nothrow_move_constructible_v< Type > &&std::is_nothrow_swappable_v< Type >) |
|
template<class... Args, std::enable_if_t< std::conjunction_v< std::is_copy_constructible< Type >, std::is_constructible< Type, Args... >>> * = nullptr> |
constexpr value_type | value_or_construct (Args &&... args) const & |
|
template<class... Args, std::enable_if_t< std::conjunction_v< std::is_move_constructible< Type >, std::is_constructible< Type, Args... >>> * = nullptr> |
constexpr value_type | value_or_construct (Args &&... args) && |
|
template<class Fty , std::enable_if_t< std::conjunction_v< std::is_copy_constructible< Type >, std::is_convertible< std::invoke_result_t< Fty >, Type >>> * = nullptr> |
constexpr value_type | value_or_eval (Fty &&f) const & |
|
template<class Fty , std::enable_if_t< std::conjunction_v< std::is_move_constructible< Type >, std::is_convertible< std::invoke_result_t< Fty >, Type >>> * = nullptr> |
constexpr value_type | value_or_eval (Fty &&f) && |
|
template<class Fty , std::enable_if_t< std::is_invocable_v< Fty, value_type & >> * = nullptr> |
constexpr void | then (Fty &&f) |
|
template<class Fty , std::enable_if_t< std::is_invocable_v< Fty, value_type >> * = nullptr> |
constexpr void | then (Fty &&f) const |
|
template<class Fty , class R = std::decay_t<std::invoke_result_t<Fty, value_type&>>> |
Optional< R > | map (Fty f) |
|
template<class Fty , class R = std::decay_t<std::invoke_result_t<Fty, value_type>>> |
Optional< R > | map (Fty f) const |
|