Template meta-programming helpers. More...
Classes | |
| struct | AddPointer |
AddPointer adds a pointer qualification to a type T if it is not already a pointer. More... | |
| struct | Conditional |
Conditional defines a type to be T if a boolean value is true, F otherwise. More... | |
| struct | Conditional< false, T, F > |
| struct | EnableIf |
| EnableIf conditionally defines a type if a boolean template parameter is true. More... | |
| struct | EnableIf< true, T > |
| struct | IsConst |
IsConst evaluates to true if the provided type T is const, false otherwise. More... | |
| struct | IsConst< const T > |
| struct | IsLValueReference |
| Determines if a type is an lvalue reference. More... | |
| struct | IsLValueReference< T & > |
| struct | IsRValueReference |
| Determines if a type is an rvalue reference. More... | |
| struct | IsRValueReference< T && > |
| struct | IsSame |
IsSame evaluates to true if the provided types T and U are the same, false otherwise. More... | |
| struct | IsSame< T, T > |
| struct | IsTriviallyCopyable |
IsTriviallyCopyable evaluates to true if the type T can be trivially copied, false otherwise. More... | |
| struct | RemoveConst |
RemoveConst removes the const qualification from a type T. More... | |
| struct | RemoveConst< const T > |
| struct | RemoveReference |
| Removes reference from a type T. More... | |
| struct | RemoveReference< T & > |
| struct | RemoveReference< T && > |
| struct | SameConstnessAs |
SameConstnessAs modifies type T to have the const-qualification of U. More... | |
| struct | TypeList |
| Represents a variadic template type list. More... | |
| struct | TypeListGet |
| Retrieves the type at the specified index in the TypeList. More... | |
| struct | TypeListGet< TypeList< T, TT... >, N, M > |
| Specialization of TypeListGet that retrieves the type at the given index. | |
| struct | TypeListGet< TypeList<>, N, 0 > |
| Empty TypeListGet specialization with an index. | |
| struct | TypeListGet< TypeList<>, N, M > |
| Specialization of TypeListGet for an empty TypeList. | |
Typedefs | |
| template<bool B, class T , class F > | |
| using | ConditionalT = typename Conditional<B,T,F>::type |
ConditionalT is an alias template that resolves to type T if a boolean value is true, otherwise to type F. | |
| template<typename T , int N> | |
| using | TypeListGetT = typename TypeListGet<T, N>::type |
| Alias template to simplify accessing the retrieved type using TypeListGet. | |
Template meta-programming helpers.