Claw
1.7.3
|
Template classes for lists of types. More...
#include <claw/meta/conditional.hpp>
#include <claw/meta/no_type.hpp>
#include <claw/meta/same_type.hpp>
Go to the source code of this file.
Classes | |
struct | claw::meta::type_list< Head, Queue > |
Use this class to make a list of types. More... | |
struct | claw::meta::split_type_list_at< Delimiter, no_type > |
Specialisation of split_type_list_at for an empty list or the case where the delimiter is no_type. More... | |
struct | claw::meta::split_type_list_at< Delimiter, TypeList > |
Split a type_list according to the first instance of a given type. More... | |
struct | claw::meta::type_list_maker_1< T1 > |
A type list with a single type, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_2< T1, T2 > |
A type list with two types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_3< T1, T2, T3 > |
A type list with three types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_4< T1, T2, T3, T4 > |
A type list with four types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_5< T1, T2, T3, T4, T5 > |
A type list with five types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_6< T1, T2, T3, T4, T5, T6 > |
A type list with six types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_7< T1, T2, T3, T4, T5, T6, T7 > |
A type list with seven types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_8< T1, T2, T3, T4, T5, T6, T7, T8 > |
A type list with height types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_9< T1, T2, T3, T4, T5, T6, T7, T8, T9 > |
A type list with nine types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_10< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 > |
A type list with ten types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_11< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 > |
A type list with eleven types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_12< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12 > |
A type list with twelve types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_13< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13 > |
A type list with thirteen types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_14< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14 > |
A type list with fourteen types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker_15< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15 > |
A type list with fifteen types, more readable than an imbricated type_list. More... | |
struct | claw::meta::type_list_maker< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15 > |
A type list with up to six types, more readable than an imbricated type_list, more readable than type_list_maker_1 and others. More... | |
struct | claw::meta::type_list_find< T, List > |
Check if a type is present in a type_list. More... | |
struct | claw::meta::type_list_find< T, no_type > |
struct | claw::meta::type_list_is_a_set< List > |
This class checks if each type in a type_list<> is present only once. More... | |
struct | claw::meta::type_list_is_a_set< no_type > |
struct | claw::meta::type_list_length< List > |
This class computes the length of a list of types. More... | |
struct | claw::meta::type_list_length< no_type > |
struct | claw::meta::type_list_contains< T, type_list< T, Tail > > |
struct | claw::meta::type_list_contains< T, no_type > |
struct | claw::meta::type_list_contains< T, type_list< Head, Tail > > |
Namespaces | |
namespace | claw |
This is the main namespace. | |
namespace | claw::meta |
Structures for meta-programmation. | |
Typedefs | |
typedef type_list_maker < signed char, unsigned char, signed short, unsigned short, signed int, unsigned int, signed long, unsigned long, signed long long, unsigned long long, float, double, long double, bool >::result | claw::meta::cpp_type_list |
The list of the types of the C++ language. |
Template classes for lists of types.
Definition in file type_list.hpp.