#ifndef ENTT_LIB_META_PLUGIN_STD_USERDATA_H #define ENTT_LIB_META_PLUGIN_STD_USERDATA_H #include #include #include #include #include #include "../../../common/value_type.h" #define ASSIGN_TYPE_ID(clazz) \ template<> \ struct entt::type_hash { \ static ENTT_CONSTEVAL entt::id_type value() noexcept { \ return entt::basic_hashed_string>>>{#clazz}; \ } \ } struct userdata { entt::locator::node_type ctx{}; entt::meta_any any{}; }; ASSIGN_TYPE_ID(std::size_t); ASSIGN_TYPE_ID(test::boxed_int); ASSIGN_TYPE_ID(test::empty); ASSIGN_TYPE_ID(double); ASSIGN_TYPE_ID(int); #endif