metaprogramming_value.qbk 528 B

12345678910111213141516171819
  1. [#metaprogramming_value]
  2. [section Template metaprogramming value]
  3. A ['template metaprogramming value] is a
  4. [link nullary_metafunction nullary template metafunction] returning itself.
  5. For example:
  6. struct void_
  7. {
  8. using type = void_;
  9. };
  10. This template metaprogramming value is called `void_`. It is a nullary
  11. metafunction returning itself as its result. Because of this, it can be treated
  12. as a nullary metafunction and evaluated any number of times. For example
  13. `void_::type::type::type` is still `void_`.
  14. [endsect]