di 0.1.0
Loading...
Searching...
No Matches
di::vocab::StatusCode< Erased< T > > Class Template Reference

#include <di/vocab/error/erased_status_code.h>

Inheritance diagram for di::vocab::StatusCode< Erased< T > >:
di::vocab::StatusCode< void >

Public Types

using Domain = void
using Value = T

Public Member Functions

 StatusCode ()=default
 StatusCode (StatusCode const &)=delete
 StatusCode (StatusCode &&)=default
template<typename Domain>
requires (concepts::StatusCodeErasableInto<Domain, Erased<T>> && !concepts::ErasedStatusCode<StatusCode<meta::Decay<Domain>>> && concepts::Trivial<typename Domain::Value>)
constexpr StatusCode (StatusCode< Domain > const &other)
template<typename Domain>
requires (concepts::StatusCodeErasableInto<Domain, Erased<T>> && !concepts::ErasedStatusCode<StatusCode<meta::Decay<Domain>>>)
constexpr StatusCode (StatusCode< Domain > &&other)
template<typename U, typename... Args>
requires (!concepts::DecaySameAs<U, StatusCode> && !concepts::DecaySameAs<U, Value> && concepts::ConvertibleToStatusCode<StatusCode, U, Args...>)
constexpr StatusCode (U &&v, Args &&... args)
auto operator= (StatusCode const &) -> StatusCode &=delete
auto operator= (StatusCode &&) -> StatusCode &=default
constexpr ~StatusCode ()
constexpr auto value () const

Friends

template<typename Domain>
class StatusCode

Member Typedef Documentation

◆ Domain

template<typename T>
using di::vocab::StatusCode< Erased< T > >::Domain = void

◆ Value

template<typename T>
using di::vocab::StatusCode< Erased< T > >::Value = T

Constructor & Destructor Documentation

◆ StatusCode() [1/6]

template<typename T>
di::vocab::StatusCode< Erased< T > >::StatusCode ( )
default

◆ StatusCode() [2/6]

template<typename T>
di::vocab::StatusCode< Erased< T > >::StatusCode ( StatusCode< Erased< T > > const & )
delete

◆ StatusCode() [3/6]

template<typename T>
di::vocab::StatusCode< Erased< T > >::StatusCode ( StatusCode< Erased< T > > && )
default

◆ StatusCode() [4/6]

template<typename T>
template<typename Domain>
requires (concepts::StatusCodeErasableInto<Domain, Erased<T>> && !concepts::ErasedStatusCode<StatusCode<meta::Decay<Domain>>> && concepts::Trivial<typename Domain::Value>)
di::vocab::StatusCode< Erased< T > >::StatusCode ( StatusCode< Domain > const & other)
inlineconstexpr

◆ StatusCode() [5/6]

template<typename T>
template<typename Domain>
requires (concepts::StatusCodeErasableInto<Domain, Erased<T>> && !concepts::ErasedStatusCode<StatusCode<meta::Decay<Domain>>>)
di::vocab::StatusCode< Erased< T > >::StatusCode ( StatusCode< Domain > && other)
inlineconstexpr

◆ StatusCode() [6/6]

template<typename T>
template<typename U, typename... Args>
requires (!concepts::DecaySameAs<U, StatusCode> && !concepts::DecaySameAs<U, Value> && concepts::ConvertibleToStatusCode<StatusCode, U, Args...>)
di::vocab::StatusCode< Erased< T > >::StatusCode ( U && v,
Args &&... args )
inlineconstexpr

◆ ~StatusCode()

template<typename T>
di::vocab::StatusCode< Erased< T > >::~StatusCode ( )
inlineconstexpr

Member Function Documentation

◆ operator=() [1/2]

template<typename T>
auto di::vocab::StatusCode< Erased< T > >::operator= ( StatusCode< Erased< T > > && ) ->StatusCode &=default
default

◆ operator=() [2/2]

template<typename T>
auto di::vocab::StatusCode< Erased< T > >::operator= ( StatusCode< Erased< T > > const & ) ->StatusCode &=delete
delete

◆ value()

template<typename T>
auto di::vocab::StatusCode< Erased< T > >::value ( ) const
inlineconstexpr

◆ StatusCode

template<typename T>
template<typename Domain>
friend class StatusCode
friend

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