std::tuple_size<std::experimental::ranges::tagged> (3) - Linux Man Pages

std::tuple_size<std::experimental::ranges::tagged>: std::tuple_size<std::experimental::ranges::tagged>


std::tuple_size<std::experimental::ranges::tagged> - std::tuple_size<std::experimental::ranges::tagged>


template< class Base, class... Tags >
struct tuple_size<std::experimental::ranges::tagged<Base, Tags...>> (ranges TS)
: std::tuple_size<Base> { };

The partial specialization of std::tuple_size for tagged provides the ability to obtain the number of elements in a tagged object using tuple-like syntax. It simply forwards to std::tuple_size<Base>.

Inherited from std::integral_constant

Member constants

value std::tuple_size<Base>::value
         (public static member constant)

Member functions

                     converts the object to std::size_t, returns value
operator std::size_t (public member function)

operator() returns value
                     (public member function)

Member types

Type Definition
value_type std::size_t
type std::integral_constant<std::size_t, value>

See also

                                                      obtains the size of tuple at compile time
tuple_size (class template specialization)
                                                      obtains the size of an array
std::tuple_size<std::array> (class template specialization)

std::tuple_size<std::pair> obtains the size of a pair
                                                      (class template specialization)
                                                      obtains the types of the elements of a tagged
std::tuple_element<std::experimental::ranges::tagged> (class template specialization)