solanaceae_tox/solanaceae/tox_messages/components_id.inl

27 lines
696 B
Plaintext
Raw Normal View History

2023-07-24 13:20:53 +02:00
#include "./components.hpp"
#include <entt/core/type_info.hpp>
// TODO: move more central
#define DEFINE_COMP_ID(x) \
template<> \
constexpr entt::id_type entt::type_hash<x>::value() noexcept { \
2024-04-15 01:05:08 +02:00
using namespace entt::literals; \
return #x##_hs; \
} \
template<> \
constexpr std::string_view entt::type_name<x>::value() noexcept { \
return #x; \
2023-07-24 13:20:53 +02:00
}
// cross compile(r) stable ids
DEFINE_COMP_ID(Message::Components::ToxFriendMessageID)
2023-07-24 13:20:53 +02:00
DEFINE_COMP_ID(Message::Components::ToxGroupMessageID)
DEFINE_COMP_ID(Message::Components::Transfer::ToxTransferFriend)
DEFINE_COMP_ID(Message::Components::Transfer::FileID)
DEFINE_COMP_ID(Message::Components::Transfer::FileKind)
#undef DEFINE_COMP_ID