17 template<
typename T,
typename TTypeList>
struct CountHelper : std::integral_constant<std::size_t, 0> {};
23 template<
typename T,
typename T0,
typename...
Ts>
24 struct CountHelper<
T,
TypeList<
T0,
Ts...>> : std::integral_constant<std::size_t, (std::is_same_v<T, T0> ? 1 : 0) + Count<T, TypeList<Ts...>>> {};
constexpr size_t Count
Interface type alias.
Definition Count.hpp:20
constexpr bool Contains
Alias for Count > 0.
Definition Count.hpp:27
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
Count base case: 0.
Definition Count.hpp:17
Compile-time list of types.
Definition TypeList.hpp:15