Embedded Template Library 1.0
smallest

Classes

struct  etl::smallest_uint_for_bits< NBITS >
 Template to determine the smallest unsigned int type that can contain a value with the specified number of bits. Defines 'type' which is the type of the smallest unsigned integer. More...
 
struct  etl::smallest_int_for_bits< NBITS >
 Template to determine the smallest signed int type that can contain a value with the specified number of bits. Defines 'type' which is the type of the smallest signed integer. More...
 
struct  etl::smallest_uint_for_value< VALUE >
 Template to determine the smallest unsigned int type that can contain the specified unsigned value. Defines 'type' which is the type of the smallest unsigned integer. More...
 
struct  etl::smallest_int_for_value< VALUE >
 Template to determine the smallest int type that can contain the specified signed value. Defines 'type' which is the type of the smallest signed integer. More...
 
struct  etl::smallest_type< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 >
 

Detailed Description


Class Documentation

◆ etl::smallest_uint_for_bits

struct etl::smallest_uint_for_bits
template<size_t NBITS>
struct etl::smallest_uint_for_bits< NBITS >

Template to determine the smallest unsigned int type that can contain a value with the specified number of bits. Defines 'type' which is the type of the smallest unsigned integer.

Template to determine the smallest unsigned int type that can contain a value with the specified number of bits. Defines 'type' which is the type of the smallest unsigned integer.

Public Types

typedef private_smallest::best_fit_uint_type< TYPE_INDEX >::type type
 
typedef private_smallest::best_fit_uint_type< TYPE_INDEX >::type type
 

◆ etl::smallest_int_for_bits

struct etl::smallest_int_for_bits
template<size_t NBITS>
struct etl::smallest_int_for_bits< NBITS >

Template to determine the smallest signed int type that can contain a value with the specified number of bits. Defines 'type' which is the type of the smallest signed integer.

Template to determine the smallest signed int type that can contain a value with the specified number of bits. Defines 'type' which is the type of the smallest signed integer.

Public Types

typedef private_smallest::best_fit_int_type< TYPE_INDEX >::type type
 
typedef private_smallest::best_fit_int_type< TYPE_INDEX >::type type
 

◆ etl::smallest_uint_for_value

struct etl::smallest_uint_for_value
template<uintmax_t VALUE>
struct etl::smallest_uint_for_value< VALUE >

Template to determine the smallest unsigned int type that can contain the specified unsigned value. Defines 'type' which is the type of the smallest unsigned integer.

Template to determine the smallest unsigned int type that can contain the specified unsigned value. Defines 'type' which is the type of the smallest unsigned integer.

Public Types

typedef private_smallest::best_fit_uint_type< TYPE_INDEX >::type type
 
typedef private_smallest::best_fit_uint_type< TYPE_INDEX >::type type
 

◆ etl::smallest_int_for_value

struct etl::smallest_int_for_value
template<intmax_t VALUE>
struct etl::smallest_int_for_value< VALUE >

Template to determine the smallest int type that can contain the specified signed value. Defines 'type' which is the type of the smallest signed integer.

Template to determine the smallest int type that can contain the specified signed value. Defines 'type' which is the type of the smallest signed integer.

Public Types

typedef private_smallest::best_fit_int_type< TYPE_INDEX >::type type
 
typedef private_smallest::best_fit_int_type< TYPE_INDEX >::type type
 

◆ etl::smallest_type

struct etl::smallest_type
template<typename T1, typename T2 = void, typename T3 = void, typename T4 = void, typename T5 = void, typename T6 = void, typename T7 = void, typename T8 = void, typename T9 = void, typename T10 = void, typename T11 = void, typename T12 = void, typename T13 = void, typename T14 = void, typename T15 = void, typename T16 = void>
struct etl::smallest_type< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 >

Template to determine the smallest type and size. Supports up to 16 types. Defines 'value_type' which is the type of the smallest parameter. Defines 'size' which is the size of the smallest parameter.

Public Types

enum  { size = sizeof(type) }
 
typedef smallest_type< T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 >::type smallest_other
 
typedef choose_type<(sizeof(T1)< sizeof(smallest_other)), T1, smallest_other > ::type type