CyberEngineMkIII
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Classes | Static Public Member Functions | List of all members
CYB::API::ParameterPack< AType, ARemaining > Class Template Reference

Contains information about a template parameter pack. More...

#include <ParameterPack.hpp>

Classes

class  Indexer
 A class which can be used to get the type at AIndex of the pack. More...
 

Static Public Member Functions

static constexpr unsigned int Size (void)
 Returns the size of the parameter pack. More...
 
template<typename AOtherType , typename... AOtherTypes>
static constexpr bool Equal (void)
 Check total equivalance with another parameter pack. More...
 
template<typename AOtherPP >
static constexpr bool PPEqual (void)
 Check total equivalance with another ParameterPack specialization. More...
 

Detailed Description

template<typename AType, typename... ARemaining>
class CYB::API::ParameterPack< AType, ARemaining >

Contains information about a template parameter pack.

Template Parameters
ATypeThe first type in the pack
ARemainingThe remaining types in the pack

Definition at line 10 of file ParameterPack.hpp.

Member Function Documentation

template<typename AType , typename... ARemaining>
template<typename AOtherType , typename... AOtherTypes>
static constexpr bool CYB::API::ParameterPack< AType, ARemaining >::Equal ( void  )
inlinestatic

Check total equivalance with another parameter pack.

Returns
true if the types are equivalent, false otherwise

Definition at line 29 of file ParameterPack.hpp.

29  {
31  && ParameterPack<ARemaining...>::template Equal<AOtherTypes...>()
32  && std::is_same<AOtherType,AType>::value;
33  }
static constexpr bool Equal(void)
Check total equivalance with another parameter pack.
static constexpr unsigned int Size(void)
Returns the size of the parameter pack.

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename AType , typename... ARemaining>
template<typename AOtherPP >
static constexpr bool CYB::API::ParameterPack< AType, ARemaining >::PPEqual ( void  )
inlinestatic

Check total equivalance with another ParameterPack specialization.

Returns
true if the types are equivalent, false otherwise

Definition at line 38 of file ParameterPack.hpp.

38  {
39  return AOtherPP::template Equal<AType, ARemaining...>();
40  }
static constexpr bool Equal(void)
Check total equivalance with another parameter pack.

Here is the call graph for this function:

template<typename AType , typename... ARemaining>
static constexpr unsigned int CYB::API::ParameterPack< AType, ARemaining >::Size ( void  )
static

Returns the size of the parameter pack.

Returns
The size of the parameter pack

Here is the caller graph for this function:


The documentation for this class was generated from the following file: