Skip to content

Latest commit

 

History

History
61 lines (44 loc) · 1.3 KB

File metadata and controls

61 lines (44 loc) · 1.3 KB

reflect_constant

  • meta[meta header]
  • std::meta[meta namespace]
  • function template[meta id-type]
  • cpp26[meta cpp]
namespace std::meta {
  template <class T>
  consteval info reflect_constant(T value);
}
  • info[link info.md]

概要

値からリフレクションを生成する。

戻り値

valueの値を表すリフレクションを返す。

#include <meta>

enum class Color { red = 1, green = 2, blue = 3 };

int main() {
  constexpr auto r = std::meta::reflect_constant(42);
  static_assert(std::meta::extract<int>(r) == 42);

  constexpr auto c = std::meta::reflect_constant(Color::green);
  static_assert(std::meta::extract<Color>(c) == Color::green);
}
  • std::meta::extract[link extract.md]

出力

バージョン

言語

  • C++26

処理系

関連項目

参照