26 void Serialize(
Node& node)
const override
28 node.SetType(NodeType::Array);
29 for (
const auto& entry : Set)
32 entryNode[
"entity"] << entry.id;
34 compNode << entry.data;
35 entryNode[
"component"] = compNode;
36 node.GetProperties().push_back({
"", entryNode });
40 void Deserialize(
const Node& node)
override
42 for (
const auto& [key, entryNode] : node.GetProperties())
45 entryNode[
"entity"] >> entity;
47 entryNode[
"component"] >> component;
48 Set.Insert(entity, component);
52 void RemoveComponent(uint32_t entity)
override
57 [[nodiscard]] std::string GetTypeName()
const override
59 return typeid(T).name();