Iros
 
Loading...
Searching...
No Matches
di::vocab::Unexpected< E > Class Template Reference

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

Public Member Functions

constexpr Unexpected (Unexpected const &)=default
 
constexpr Unexpected (Unexpected &&)=default
 
template<typename T = E>
requires (!concepts::RemoveCVRefSameAs<T, Unexpected> && !concepts::RemoveCVRefSameAs<T, types::InPlace> && concepts::ConstructibleFrom<E, T>)
constexpr Unexpected (T &&error)
 
template<typename... Args>
requires (concepts::ConstructibleFrom<E, Args...>)
constexpr Unexpected (types::InPlace, Args &&... args)
 
template<typename T, typename... Args>
requires (concepts::ConstructibleFrom<E, std::initializer_list<T>, Args...>)
constexpr Unexpected (types::InPlace, std::initializer_list< T > list, Args &&... args)
 
constexpr auto error () &-> E &
 
constexpr auto error () const &-> E const &
 
constexpr auto error () &&-> E &&
 
constexpr auto error () const &&-> E const &&
 

Friends

constexpr friend void tag_invoke (types::Tag< util::swap >, Unexpected &a, Unexpected &b)
 

Constructor & Destructor Documentation

◆ Unexpected() [1/5]

template<typename E>
di::vocab::Unexpected< E >::Unexpected ( Unexpected< E > const & )
constexprdefault

◆ Unexpected() [2/5]

template<typename E>
di::vocab::Unexpected< E >::Unexpected ( Unexpected< E > && )
constexprdefault

◆ Unexpected() [3/5]

template<typename E>
template<typename T = E>
requires (!concepts::RemoveCVRefSameAs<T, Unexpected> && !concepts::RemoveCVRefSameAs<T, types::InPlace> && concepts::ConstructibleFrom<E, T>)
di::vocab::Unexpected< E >::Unexpected ( T && error)
inlineexplicitconstexpr

◆ Unexpected() [4/5]

template<typename E>
template<typename... Args>
requires (concepts::ConstructibleFrom<E, Args...>)
di::vocab::Unexpected< E >::Unexpected ( types::InPlace ,
Args &&... args )
inlineexplicitconstexpr

◆ Unexpected() [5/5]

template<typename E>
template<typename T, typename... Args>
requires (concepts::ConstructibleFrom<E, std::initializer_list<T>, Args...>)
di::vocab::Unexpected< E >::Unexpected ( types::InPlace ,
std::initializer_list< T > list,
Args &&... args )
inlineexplicitconstexpr

Member Function Documentation

◆ error() [1/4]

template<typename E>
auto di::vocab::Unexpected< E >::error ( ) && -> E&&
inlineconstexpr

◆ error() [2/4]

template<typename E>
auto di::vocab::Unexpected< E >::error ( ) & -> E&
inlineconstexpr

◆ error() [3/4]

template<typename E>
auto di::vocab::Unexpected< E >::error ( ) const && -> E const&&
inlineconstexpr

◆ error() [4/4]

template<typename E>
auto di::vocab::Unexpected< E >::error ( ) const & -> E const&
inlineconstexpr

Friends And Related Symbol Documentation

◆ tag_invoke

template<typename E>
friend void tag_invoke ( types::Tag< util::swap > ,
Unexpected< E > & a,
Unexpected< E > & b )
friend

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