GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | 静的公開変数類 | フレンド | 全メンバ一覧
designlab::nostd::unexpected< E > クラステンプレートfinal

#include <my_unexpected.h>

公開メンバ関数

constexpr unexpected (const unexpected &)=default
 コピーコンストラクタ
 
constexpr unexpected (unexpected &&)=default
 ムーブコンストラクタ
 
template<typename Err = E, std::enable_if_t< param_concept3< Err >, std::nullptr_t > = nullptr>
constexpr unexpected (const Err &e)
 
template<typename... Args, std::enable_if_t< param_concept4< Args... >, std::nullptr_t > = nullptr>
constexpr unexpected (std::in_place_t, Args &&... args)
 
template<typename U , typename... Args, std::enable_if_t< param_concept5< U, Args... >, std::nullptr_t > = nullptr>
constexpr unexpected (std::in_place_t, std::initializer_list< U > il, Args &&... args)
 
constexpr unexpectedoperator= (const unexpected &)=default
 
constexpr unexpectedoperator= (unexpected &&)=default
 
constexpr ~unexpected ()=default
 
constexpr const E & error () const &noexcept
 
constexpr E & error () &noexcept
 
constexpr E && error () &&noexcept
 

静的公開変数類

template<typename Err >
static constexpr bool param_concept3_1
 
template<typename Err >
static constexpr bool param_concept3_2
 
template<typename Err >
static constexpr bool param_concept3_3 = std::is_constructible_v<E, Err>
 
template<typename Err >
static constexpr bool param_concept3
 
template<typename... Args>
static constexpr bool param_concept4 = std::is_constructible_v<E, Args...>
 
template<typename U , typename... Args>
static constexpr bool param_concept5
 

フレンド

template<typename E2 >
constexpr bool operator== (const unexpected< E2 > &lhs, const unexpected< E2 > &rhs)
 
template<typename E2 >
constexpr bool operator!= (const unexpected< E2 > &lhs, const unexpected< E2 > &rhs)
 

詳解

template<typename E>
class designlab::nostd::unexpected< E >

my_unexpected.h19 行目に定義があります。

構築子と解体子

◆ unexpected() [1/5]

template<typename E >
constexpr designlab::nostd::unexpected< E >::unexpected ( const unexpected< E > &  )
constexprdefault

コピーコンストラクタ

◆ unexpected() [2/5]

template<typename E >
constexpr designlab::nostd::unexpected< E >::unexpected ( unexpected< E > &&  )
constexprdefault

ムーブコンストラクタ

◆ unexpected() [3/5]

template<typename E >
template<typename Err = E, std::enable_if_t< param_concept3< Err >, std::nullptr_t > = nullptr>
constexpr designlab::nostd::unexpected< E >::unexpected ( const Err &  e)
inlineexplicitconstexpr

my_unexpected.h52 行目に定義があります。

◆ unexpected() [4/5]

template<typename E >
template<typename... Args, std::enable_if_t< param_concept4< Args... >, std::nullptr_t > = nullptr>
constexpr designlab::nostd::unexpected< E >::unexpected ( std::in_place_t  ,
Args &&...  args 
)
inlineexplicitconstexpr

my_unexpected.h56 行目に定義があります。

◆ unexpected() [5/5]

template<typename E >
template<typename U , typename... Args, std::enable_if_t< param_concept5< U, Args... >, std::nullptr_t > = nullptr>
constexpr designlab::nostd::unexpected< E >::unexpected ( std::in_place_t  ,
std::initializer_list< U >  il,
Args &&...  args 
)
inlineexplicitconstexpr

my_unexpected.h62 行目に定義があります。

◆ ~unexpected()

template<typename E >
constexpr designlab::nostd::unexpected< E >::~unexpected ( )
constexprdefault

関数詳解

◆ error() [1/3]

template<typename E >
constexpr E && designlab::nostd::unexpected< E >::error ( ) &&
inlineconstexprnoexcept

my_unexpected.h81 行目に定義があります。

◆ error() [2/3]

template<typename E >
constexpr E & designlab::nostd::unexpected< E >::error ( ) &
inlineconstexprnoexcept

my_unexpected.h80 行目に定義があります。

◆ error() [3/3]

template<typename E >
constexpr const E & designlab::nostd::unexpected< E >::error ( ) const &
inlineconstexprnoexcept

my_unexpected.h79 行目に定義があります。

被呼び出し関係図:

◆ operator=() [1/2]

template<typename E >
constexpr unexpected & designlab::nostd::unexpected< E >::operator= ( const unexpected< E > &  )
constexprdefault

◆ operator=() [2/2]

template<typename E >
constexpr unexpected & designlab::nostd::unexpected< E >::operator= ( unexpected< E > &&  )
constexprdefault

フレンドと関連関数の詳解

◆ operator!=

template<typename E >
template<typename E2 >
constexpr bool operator!= ( const unexpected< E2 > &  lhs,
const unexpected< E2 > &  rhs 
)
friend

◆ operator==

template<typename E >
template<typename E2 >
constexpr bool operator== ( const unexpected< E2 > &  lhs,
const unexpected< E2 > &  rhs 
)
friend

メンバ詳解

◆ param_concept3

template<typename E >
template<typename Err >
constexpr bool designlab::nostd::unexpected< E >::param_concept3
staticconstexpr
初期値:
=
param_concept3_1<Err> && param_concept3_2<Err> && param_concept3_3<Err>

my_unexpected.h35 行目に定義があります。

◆ param_concept3_1

template<typename E >
template<typename Err >
constexpr bool designlab::nostd::unexpected< E >::param_concept3_1
staticconstexpr
初期値:
=
!std::is_same_v<std::remove_cvref_t<Err>, unexpected>
constexpr unexpected(const unexpected &)=default
コピーコンストラクタ

my_unexpected.h24 行目に定義があります。

◆ param_concept3_2

template<typename E >
template<typename Err >
constexpr bool designlab::nostd::unexpected< E >::param_concept3_2
staticconstexpr
初期値:
=
!std::is_same_v<std::remove_cvref_t<Err>, std::in_place_t>

my_unexpected.h28 行目に定義があります。

◆ param_concept3_3

template<typename E >
template<typename Err >
constexpr bool designlab::nostd::unexpected< E >::param_concept3_3 = std::is_constructible_v<E, Err>
staticconstexpr

my_unexpected.h32 行目に定義があります。

◆ param_concept4

template<typename E >
template<typename... Args>
constexpr bool designlab::nostd::unexpected< E >::param_concept4 = std::is_constructible_v<E, Args...>
staticconstexpr

my_unexpected.h39 行目に定義があります。

◆ param_concept5

template<typename E >
template<typename U , typename... Args>
constexpr bool designlab::nostd::unexpected< E >::param_concept5
staticconstexpr
初期値:
=
std::is_constructible_v<E, std::initializer_list<U>, Args...>

my_unexpected.h42 行目に定義があります。


このクラス詳解は次のファイルから抽出されました: