1#ifndef ENTT_CORE_IDENT_HPP
2#define ENTT_CORE_IDENT_HPP
8#include "type_traits.hpp"
16template<
typename... Type>
18 template<
typename Curr, std::size_t... Index>
19 [[nodiscard]]
static constexpr id_type get(std::index_sequence<Index...>)
noexcept {
20 static_assert((std::is_same_v<Curr, Type> || ...),
"Invalid type");
29 template<
typename Curr>
30 static constexpr value_type value = get<std::decay_t<Curr>>(std::index_sequence_for<Type...>{});
Type integral identifiers.
id_type value_type
Unsigned integer type.
static constexpr value_type value
Statically generated unique identifier for the given type.
std::uint32_t id_type
Alias declaration for type identifiers.
constexpr get_t< Type... > get
Variable template for lists of observed elements.
typename type_list_element< Index, List >::type type_list_element_t
Helper type.
A class to use to push around lists of types, nothing more.