11template<
typename... Ts>
18template<
typename T,
typename Group>
21template<
typename A,
typename B>
24template<
typename...
As,
typename...
Bs>
29template<
typename A,
typename B>
32template<
typename Group>
38template<
typename T,
typename... Ts>
40 : std::bool_constant<(!(std::same_as<T, Ts> || ...)) &&
41 IsUniqueComponentGroup<ComponentGroup<Ts...>>::value> {};
44template<
typename T,
typename... Ts>
46 static constexpr bool is_registered = (std::same_as<T, Ts> || ...);
49 constexpr bool matches[] = {std::same_as<T, Ts>...};
50 for (
USize i = 0;
i <
sizeof...(Ts); ++
i) {
54 return static_cast<USize>(-1);
57 static constexpr auto name = std::meta::identifier_of(^^T);
Definition component_registration.hpp:68
Definition Application.hpp:22
typename ConcatComponentGroups< A, B >::type ConcatComponentGroups_t
Definition component_registration.hpp:30
constexpr bool k_always_false
Definition component_registration.hpp:16
Definition component_registration.hpp:12
Definition component_registration.hpp:62
static void deserialize(T &component, Serializer &s)=delete
static void serialize(const T &component, Serializer &s)=delete
static constexpr USize id()
Definition component_registration.hpp:48
Definition component_registration.hpp:19
Definition component_registration.hpp:22
Definition component_registration.hpp:33
Definition serialization.hpp:38
consteval U64 type_id_of()
Definition type_id.hpp:6
std::size_t USize
Definition types.hpp:18