claw 1.9.0
 
Loading...
Searching...
No Matches
type_list.hpp File Reference

Template classes for lists of types. More...

Include dependency graph for type_list.hpp:
This graph shows which files directly or indirectly include this file:

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< signedchar, unsignedchar, signedshort, unsignedshort, signedint, unsignedint, signedlong, unsignedlong, signedlonglong, unsignedlonglong, float, double, longdouble, bool >::result claw::meta::cpp_type_list
 The list of the types of the C++ language.
 

Detailed Description

Template classes for lists of types.

Author
Julien Jorge

Definition in file type_list.hpp.