[meta.unary.prop.query] (original) (raw)
21 Metaprogramming library [meta]
21.3 Metaprogramming and type traits [type.traits]
21.3.6 Type property queries [meta.unary.prop.query]
The templates specified in Table 55may be used to query properties of types at compile time.
[Example 1: static_assert(rank_v<int> == 0);static_assert(rank_v<int[2]> == 1);static_assert(rank_v<int[][4]> == 2); — _end example_]
[Example 2: static_assert(extent_v<int> == 0);static_assert(extent_v<int[2]> == 2);static_assert(extent_v<int[2][4]> == 2);static_assert(extent_v<int[][4]> == 0);static_assert(extent_v<int, 1> == 0);static_assert(extent_v<int[2], 1> == 0);static_assert(extent_v<int[2][4], 1> == 4);static_assert(extent_v<int[][4], 1> == 4); — _end example_]