A compile time structure for mapping two types. More...
#include <CompileTimeTypeMap.h>
Public Types | |
template<typename InKey > | |
using | get = typename detail::CompileTimeTypeMapImpl< sizeof...(Items), Items... >::template get< InKey > |
template<size_t Index> | |
using | get_by_index = typename detail::CompileTimeTypeMapImpl< sizeof...(Items), Items... >::template get_by_index< Index > |
Static Public Member Functions | |
static constexpr size_t | size () |
A compile time structure for mapping two types.
Lookup elements by Key or by Index.
Example usage:
using MyMap = CompileTimeTypeMap<std::pair<A, B>, std::pair<C, D>>; using type_B = MyMap::get<A>::type; constexpr size_t index_B = MyMap::get<A>::index; using type_B_too = MyMap::get_by_index<index_B>::type;
Definition at line 90 of file CompileTimeTypeMap.h.
using carla::sensor::CompileTimeTypeMap< Items >::get = typename detail::CompileTimeTypeMapImpl<sizeof...(Items), Items...>::template get<InKey> |
Definition at line 97 of file CompileTimeTypeMap.h.
using carla::sensor::CompileTimeTypeMap< Items >::get_by_index = typename detail::CompileTimeTypeMapImpl<sizeof...(Items), Items...>::template get_by_index<Index> |
Definition at line 100 of file CompileTimeTypeMap.h.
|
inlinestatic |
Definition at line 92 of file CompileTimeTypeMap.h.