29#ifndef ETL_TYPE_SELECT_INCLUDED
30#define ETL_TYPE_SELECT_INCLUDED
33#include "static_assert.h"
42#error THIS HEADER IS A GENERATOR. DO NOT INCLUDE.
59#if ETL_USING_CPP11 && !defined(ETL_TYPE_SELECT_FORCE_CPP03_IMPLEMENTATION)
63 template <
typename... TTypes>
69 template <
size_t Id,
size_t Index,
typename T1,
typename... TRest>
70 struct type_select_helper
72 using type =
typename etl::conditional<Id == Index,
74 typename type_select_helper<Id, Index + 1, TRest...>::type>::type;
78 template <
size_t Id,
size_t Index,
typename T1>
79 struct type_select_helper<Id, Index, T1>
89 static_assert(Id <
sizeof...(TTypes),
"Illegal type_select::select index");
91 using type =
typename type_select_helper<Id, 0, TTypes...>::type;
95 using select_t =
typename select<Id>::type;
101 template <
size_t Index,
typename... TTypes>
102 using type_select_t =
typename etl::type_select<TTypes...>:: template select_t<Index>;
bitset_ext
Definition absolute.h:39
Definition type_select.h:119
Definition type_select.h:114