#include <apibase.h>
Helper class to work with parameter packs. IndexOf supports finding the index of a type in the argument list, At supports indexing into the list, ContainsAll implements a subset test:
T | The types of the parameter pack. |
Classes | |
struct | At |
struct | IndexOf |
Public Types | |
using | FirstType = void |
using | RestPack = ParameterPack<> |
template<typename... X> | |
using | ContainsAll = maxon::details::ParameterPackContainsAll< ParameterPack, X... > |
template<template< typename... > class TEMPLATE, typename... X> | |
using | Apply = TEMPLATE< X..., T... > |
Static Public Attributes | |
static const Int | COUNT |
using FirstType = void |
The first type of this parameter pack.
using RestPack = ParameterPack<> |
using ContainsAll = maxon::details::ParameterPackContainsAll<ParameterPack, X...> |
ContainsAll checks if this parameter pack contains all types X. Besides a list of types X can also be a ParameterPack itself.
X | Types to check. This can either be a list of types, or a single ParameterPack. |
using Apply = TEMPLATE<X..., T...> |
|
static |