snapshot: drop useless function

This commit is contained in:
Michele Caini
2023-05-31 15:03:14 +02:00
parent e0a1ef7c1b
commit 1d89434812

View File

@@ -386,15 +386,6 @@ class basic_continuous_loader {
}
}
template<typename Component>
void remove_if_exists() {
auto &storage = reg->template storage<Component>();
for(auto &&ref: remloc) {
storage.remove(ref.second.first);
}
}
template<typename Component, typename Archive, typename... Other, typename... Member>
void assign(Archive &archive, [[maybe_unused]] Member Other::*...member) {
auto &storage = reg->template storage<Component>();
@@ -485,7 +476,10 @@ public:
destroy(entt);
}
} else {
remove_if_exists<Type>();
for(auto &&ref: remloc) {
storage.remove(ref.second.first);
}
assign<Type>(archive, Member...);
}
@@ -523,7 +517,12 @@ public:
*/
template<typename... Component, typename Archive, typename... Member, typename... Clazz>
[[deprecated("use .component<Type>(archive, members...) instead")]] basic_continuous_loader &component(Archive &archive, Member Clazz::*...member) {
(remove_if_exists<Component>(), ...);
auto storage{std::forward_as_tuple(reg->template storage<Component>())...};
for(auto &&ref: remloc) {
std::apply([&ref](auto &&...elem) { elem.remove(ref.second.first); }, storage);
}
(assign<Component>(archive, member...), ...);
return *this;
}