di 0.1.0
Loading...
Searching...
No Matches
di::vocab::Expected< void, void > Class Reference

#include <di/vocab/expected/expected_void_void.h>

Inheritance diagram for di::vocab::Expected< void, void >:
di::function::monad::MonadInterface< Expected< void, void > >

Public Types

using Value = void
 
using Error = void
 

Public Member Functions

constexpr Expected ()=default
 
constexpr Expected (Expected const &)=default
 
constexpr Expected (Expected &)=default
 
constexpr Expected (types::InPlace)
 
constexpr ~Expected ()=default
 
constexpr auto operator= (Expected const &) -> Expected &=default
 
constexpr auto operator= (Expected &&) -> Expected &=default
 
constexpr operator bool () const
 
constexpr auto has_value () const -> bool
 
constexpr void operator* () const &
 
constexpr void operator* () &&
 
constexpr void value () const &
 
constexpr void value () &&
 
constexpr void emplace ()
 
auto __try_did_fail () &&-> Expected
 
constexpr auto __try_did_succeed () &&-> Expected
 
constexpr void __try_move_out () &&
 
- Public Member Functions inherited from di::function::monad::MonadInterface< Expected< void, void > >
constexpr auto transform (F &&function) &-> decltype(auto)
 
constexpr auto transform (F &&function) const &-> decltype(auto)
 
constexpr auto transform (F &&function) &&-> decltype(auto)
 
constexpr auto transform (F &&function) const &&-> decltype(auto)
 
constexpr auto and_then (F &&function) &-> decltype(auto)
 
constexpr auto and_then (F &&function) const &-> decltype(auto)
 
constexpr auto and_then (F &&function) &&-> decltype(auto)
 
constexpr auto and_then (F &&function) const &&-> decltype(auto)
 
constexpr auto or_else (F &&function) &-> decltype(auto)
 
constexpr auto or_else (F &&function) const &-> decltype(auto)
 
constexpr auto or_else (F &&function) &&-> decltype(auto)
 
constexpr auto or_else (F &&function) const &&-> decltype(auto)
 
constexpr auto transform_error (F &&function) &-> decltype(auto)
 
constexpr auto transform_error (F &&function) const &-> decltype(auto)
 
constexpr auto transform_error (F &&function) &&-> decltype(auto)
 
constexpr auto transform_error (F &&function) const &&-> decltype(auto)
 

Friends

template<typename G>
constexpr friend auto operator== (Expected const &, Expected< void, G > const &b) -> bool
 
template<typename G>
constexpr friend auto operator== (Expected const &, Unexpected< G > const &) -> bool
 
template<concepts::RemoveCVRefSameAs< Expected > Self, typename F, typename U = meta::UnwrapRefDecay<meta::InvokeResult<F>>>
constexpr friend auto tag_invoke (types::Tag< function::monad::fmap >, Self &&, F &&function) -> Expected< U, void >
 
template<concepts::RemoveCVRefSameAs< Expected > Self, typename F, typename R = meta::InvokeResult<F>>
requires (concepts::Expected<R>)
constexpr friend auto tag_invoke (types::Tag< function::monad::bind >, Self &&, F &&function) -> R
 
template<concepts::RemoveCVRefSameAs< Expected > Self, typename F>
requires (concepts::ConstructibleFrom<Expected, Self>)
constexpr friend auto tag_invoke (types::Tag< function::monad::fail >, Self &&self, F &&) -> Expected
 
template<concepts::RemoveCVRefSameAs< Expected > Self, typename F>
requires (concepts::ConstructibleFrom<Expected, Self>)
constexpr friend auto tag_invoke (types::Tag< function::monad::fmap_right >, Self &&self, F &&) -> Expected
 

Member Typedef Documentation

◆ Error

using di::vocab::Expected< void, void >::Error = void

◆ Value

using di::vocab::Expected< void, void >::Value = void

Constructor & Destructor Documentation

◆ Expected() [1/4]

di::vocab::Expected< void, void >::Expected ( )
constexprdefault

◆ Expected() [2/4]

di::vocab::Expected< void, void >::Expected ( Expected< void, void > const & )
constexprdefault

◆ Expected() [3/4]

di::vocab::Expected< void, void >::Expected ( Expected< void, void > & )
constexprdefault

◆ Expected() [4/4]

di::vocab::Expected< void, void >::Expected ( types::InPlace )
inlineexplicitconstexpr

◆ ~Expected()

di::vocab::Expected< void, void >::~Expected ( )
constexprdefault

Member Function Documentation

◆ __try_did_fail()

auto di::vocab::Expected< void, void >::__try_did_fail ( ) && -> Expected
inline

◆ __try_did_succeed()

auto di::vocab::Expected< void, void >::__try_did_succeed ( ) && -> Expected
inlineconstexpr

◆ __try_move_out()

void di::vocab::Expected< void, void >::__try_move_out ( ) &&
inlineconstexpr

◆ emplace()

void di::vocab::Expected< void, void >::emplace ( )
inlineconstexpr

◆ has_value()

auto di::vocab::Expected< void, void >::has_value ( ) const -> bool
inlineconstexpr

◆ operator bool()

di::vocab::Expected< void, void >::operator bool ( ) const
inlineexplicitconstexpr

◆ operator*() [1/2]

void di::vocab::Expected< void, void >::operator* ( ) &&
inlineconstexpr

◆ operator*() [2/2]

void di::vocab::Expected< void, void >::operator* ( ) const &
inlineconstexpr

◆ operator=() [1/2]

auto di::vocab::Expected< void, void >::operator= ( Expected< void, void > && ) -> Expected &=default
constexprdefault

◆ operator=() [2/2]

auto di::vocab::Expected< void, void >::operator= ( Expected< void, void > const & ) -> Expected &=default
constexprdefault

◆ value() [1/2]

void di::vocab::Expected< void, void >::value ( ) &&
inlineconstexpr

◆ value() [2/2]

void di::vocab::Expected< void, void >::value ( ) const &
inlineconstexpr

Friends And Related Symbol Documentation

◆ operator== [1/2]

template<typename G>
friend auto operator== ( Expected< void, void > const & ,
Expected< void, G > const & b ) -> bool
friend

◆ operator== [2/2]

template<typename G>
friend auto operator== ( Expected< void, void > const & ,
Unexpected< G > const &  ) -> bool
friend

◆ tag_invoke [1/4]

template<concepts::RemoveCVRefSameAs< Expected > Self, typename F, typename R = meta::InvokeResult<F>>
requires (concepts::Expected<R>)
friend auto tag_invoke ( types::Tag< function::monad::bind > ,
Self && ,
F && function ) -> R
friend

◆ tag_invoke [2/4]

template<concepts::RemoveCVRefSameAs< Expected > Self, typename F>
requires (concepts::ConstructibleFrom<Expected, Self>)
friend auto tag_invoke ( types::Tag< function::monad::fail > ,
Self && self,
F &&  ) -> Expected
friend

◆ tag_invoke [3/4]

template<concepts::RemoveCVRefSameAs< Expected > Self, typename F, typename U = meta::UnwrapRefDecay<meta::InvokeResult<F>>>
friend auto tag_invoke ( types::Tag< function::monad::fmap > ,
Self && ,
F && function ) -> Expected<U, void>
friend

◆ tag_invoke [4/4]

template<concepts::RemoveCVRefSameAs< Expected > Self, typename F>
requires (concepts::ConstructibleFrom<Expected, Self>)
friend auto tag_invoke ( types::Tag< function::monad::fmap_right > ,
Self && self,
F &&  ) -> Expected
friend

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