Namespaces
Variants

std:: is_error_code_enum

From cppreference.net
Utilities library
定義先ヘッダ <system_error>
template < class T >
struct is_error_code_enum ;
(C++11以降)

T がエラーコード列挙型(例えば std::io_errc std::future_errc )である場合、このテンプレートはメンバー定数 value true に等しい値を提供します。他のあらゆる型に対しては、 value false となります。

このテンプレートは、 program-defined type に対して特殊化され、その型が std::error_code への暗黙変換の対象となることを示すために使用できます。

目次

ヘルパー変数テンプレート

template < class T >
constexpr bool is_error_code_enum_v = is_error_code_enum < T > :: value ;
(C++17以降)

std::integral_constantから継承

メンバ定数

value
[static]
true T がエラーコード列挙型の場合、 false それ以外の場合
(公開静的メンバ定数)

メンバ関数

operator bool
オブジェクトを bool に変換し、 value を返す
(公開メンバ関数)
operator()
(C++14)
value を返す
(公開メンバ関数)

メンバ型

定義
value_type bool
type std:: integral_constant < bool , value >
#include <ios>
#include <system_error>
static_assert(std::is_error_code_enum_v<decltype(std::io_errc::stream)>);
static_assert(!std::is_error_code_enum_v<std::error_category>);
int main() {}

関連項目

列挙型が std::error_condition であることを識別する
(クラステンプレート)