Namespaces
Variants

std::meta::constant_of

ja.cppreference.net より
< cpp | meta
 
 
 
リフレクションライブラリ
 
リフレクションの型とクエリ
リフレクションクエリ
リフレクションレイアウトクエリ
型プロパティ
型プロパティクエリ
 
ヘッダで定義 <meta>
constexpr std::meta::info constant_of( std::meta::info r );
(C++26 以降)

以下の(定数)値のリフレクションを返す:r が表す。

形式的には:

  • もし r が アノテーション を表す場合、基となる定数を返す(std::meta::reflect_constant(expr) ただし expr はそのアノテーションの定数式)。
  • そうでない場合、R を r に等しい定数式とする:
  • もし r が配列型の変数またはオブジェクトを表す場合、std::meta::reflect_constant_array([:R:]) を返す。
  • そうでなく、もし r が関数を表す場合、std::meta::reflect_function([:R:]) を返す。
  • そうでない場合、std::meta::reflect_constant([:R:]) を返す。

引数

r - リフレクション値

戻り値

以下の値のリフレクション:r が表す。

例外

送出する: std::meta::exception ただし、r がアノテーションを表すか、[:R:] が有効なスプライス式 である場合を除く。

注記

結果は、もし r が関数を表す場合は関数、テンプレートパラメータオブジェクト の場合、r が配列型またはクラス型の変数またはオブジェクトを表す場合、またはスカラー値(r がスカラー型の変数またはオブジェクトを表す場合)。

例

関連項目

値またはテンプレートパラメータオブジェクトを表すリフレクションを返し、定数テンプレート引数として使用可能
(関数テンプレート)
コンパイル時配列を静的ストレージに昇格させ、静的配列を表すリフレクションを返す
(関数テンプレート)
関数を表すリフレクションを返し、定数テンプレート引数として使用可能
(関数テンプレート)