RESTinio
Classes | Typedefs | Functions
nonstd::variants::detail Namespace Reference

Classes

struct  add_pointer
 
struct  alignment_logic
 
struct  alignment_of
 
struct  alignment_of_hack
 
struct  Comparator
 
struct  conditional
 
struct  conditional< false, Then, Else >
 
struct  conditional< true, Then, Else >
 
struct  helper
 
struct  nulltype
 
struct  remove_const
 
struct  remove_const< const T >
 
struct  remove_cv
 
struct  remove_reference
 
struct  remove_reference< T & >
 
struct  remove_volatile
 
struct  remove_volatile< volatile T >
 
struct  S0
 
struct  S1
 
struct  S2
 
struct  S3
 
struct  S4
 
struct  S5
 
struct  S6
 
struct  struct_t
 
struct  TX
 
struct  type_of_size
 
struct  type_of_size< nulltype, N >
 
struct  typelist
 
struct  typelist_index_of
 
struct  typelist_index_of< nulltype, T >
 
struct  typelist_index_of< typelist< Head, Tail >, T >
 
struct  typelist_index_of< typelist< T, Tail >, T >
 
struct  typelist_max
 
struct  typelist_max< nulltype >
 
struct  typelist_max< typelist< Head, Tail > >
 
struct  typelist_size
 
struct  typelist_size< nulltype >
 
struct  typelist_size< T0 >
 
struct  typelist_size< T1 >
 
struct  typelist_size< T2 >
 
struct  typelist_size< T3 >
 
struct  typelist_size< T4 >
 
struct  typelist_size< T5 >
 
struct  typelist_size< T6 >
 
struct  typelist_size< typelist< Head, Tail > >
 
struct  typelist_type_at
 
struct  typelist_type_at< typelist< Head, Tail >, 0 >
 
struct  typelist_type_at< typelist< Head, Tail >, i >
 

Typedefs

typedef TX< S0T0
 
typedef TX< S1T1
 
typedef TX< S2T2
 
typedef TX< S3T3
 
typedef TX< S4T4
 
typedef TX< S5T5
 
typedef TX< S6T6
 
typedef nulltype alignment_types
 

Functions

typedef variant_ALIGN_TYPE (char)
 
typedef variant_ALIGN_TYPE (short)
 
typedef variant_ALIGN_TYPE (int)
 
typedef variant_ALIGN_TYPE (long)
 
typedef variant_ALIGN_TYPE (float)
 
typedef variant_ALIGN_TYPE (double)
 
typedef variant_ALIGN_TYPE (char *)
 
typedef variant_ALIGN_TYPE (short *)
 
typedef variant_ALIGN_TYPE (int *)
 
typedef variant_ALIGN_TYPE (long *)
 
typedef variant_ALIGN_TYPE (float *)
 
typedef variant_ALIGN_TYPE (double *)
 
typedef variant_ALIGN_TYPE (long double *)
 
typedef variant_ALIGN_TYPE (Unknown(*)(Unknown))
 
typedef variant_ALIGN_TYPE (Unknown *Unknown::*)
 
typedef variant_ALIGN_TYPE (Unknown(Unknown::*)(Unknown))
 
template<typename T >
std::size_t hash (T const &v)
 

Typedef Documentation

◆ alignment_types

Definition at line 694 of file variant.hpp.

◆ T0

Definition at line 420 of file variant.hpp.

◆ T1

Definition at line 421 of file variant.hpp.

◆ T2

Definition at line 422 of file variant.hpp.

◆ T3

Definition at line 423 of file variant.hpp.

◆ T4

Definition at line 424 of file variant.hpp.

◆ T5

Definition at line 425 of file variant.hpp.

◆ T6

Definition at line 426 of file variant.hpp.

Function Documentation

◆ hash()

template<typename T >
std::size_t nonstd::variants::detail::hash ( T const v)
inline

Definition at line 701 of file variant.hpp.

◆ variant_ALIGN_TYPE() [1/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( char  )

◆ variant_ALIGN_TYPE() [2/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( short  )

◆ variant_ALIGN_TYPE() [3/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( int  )

◆ variant_ALIGN_TYPE() [4/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( long  double)

◆ variant_ALIGN_TYPE() [5/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( float  )

◆ variant_ALIGN_TYPE() [6/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( double  )

◆ variant_ALIGN_TYPE() [7/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( char *  )

◆ variant_ALIGN_TYPE() [8/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( short *  )

◆ variant_ALIGN_TYPE() [9/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( int *  )

◆ variant_ALIGN_TYPE() [10/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( long *  )

◆ variant_ALIGN_TYPE() [11/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( float *  )

◆ variant_ALIGN_TYPE() [12/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( double *  )

◆ variant_ALIGN_TYPE() [13/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( long double *  )

◆ variant_ALIGN_TYPE() [14/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( Unknown(*)(Unknown)  )

◆ variant_ALIGN_TYPE() [15/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( Unknown *Unknown::*  )

◆ variant_ALIGN_TYPE() [16/16]

typedef nonstd::variants::detail::variant_ALIGN_TYPE ( Unknown(Unknown::*)(Unknown)  )