From 47b9691f9bde62ea62f6601503997d93ed7ab64c Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Tue, 16 Jul 2024 12:27:46 +0200 Subject: wa --- serialize/savegame.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'serialize/savegame.cpp') diff --git a/serialize/savegame.cpp b/serialize/savegame.cpp index f7893094..d279bd9e 100644 --- a/serialize/savegame.cpp +++ b/serialize/savegame.cpp @@ -5,6 +5,7 @@ #include "compat/strerror.hpp" #include "compat/hash.hpp" #include "compat/exception.hpp" +#include "compat/borrowed-ptr.inl" #include "src/ground-atlas.hpp" #include "src/wall-atlas.hpp" @@ -23,7 +24,6 @@ #include #include #include -#include #include #include #include @@ -402,7 +402,7 @@ struct writer final : visitor_ template static void visit(const local_coords& pt, F&& f) { visit(pt.to_index(), f); } template void visit(StringView name, F&& f) { visit(intern_string(name), f); } - template void visit(qual>& a, atlas_type type, F&& f) + template void visit(qual>& a, atlas_type type, F&& f) { atlasid id = intern_atlas(a, type); visit(id, f); } template void write_scenery_proto(const scenery& obj, F&& f) @@ -483,7 +483,7 @@ ok: void(); visit(intern_string(name), f); } - template [[nodiscard]] atlasid intern_atlas(const std::shared_ptr& atlas_, atlas_type type) + template [[nodiscard]] atlasid intern_atlas(const bptr& atlas_, atlas_type type) { const void* atlas = atlas_.get(); atlas_array.reserve(vector_initial_size); @@ -512,7 +512,7 @@ ok: void(); } } - template atlasid maybe_intern_atlas(const std::shared_ptr& atlas, atlas_type type) + template atlasid maybe_intern_atlas(const bptr& atlas, atlas_type type) { if (!atlas) return null; @@ -533,7 +533,7 @@ ok: void(); template void serialize_objects_(chunk& c, F&& f) { uint32_t count = 0; - for (const std::shared_ptr& obj : c.objects()) + for (const bptr& obj : c.objects()) { if (obj->ephemeral) continue; @@ -541,7 +541,7 @@ ok: void(); } visit(count, f); - for (const std::shared_ptr& obj : c.objects()) + for (const bptr& obj : c.objects()) { fm_assert(obj != nullptr); if (obj->ephemeral) @@ -798,7 +798,7 @@ struct reader final : visitor_, false, IsNewest> template static void visit(local_coords& pt, F&& f) { uint8_t i; f(i); pt = local_coords{i}; } - template void visit(std::shared_ptr& a, atlas_type type, F&& f) + template void visit(bptr& a, atlas_type type, F&& f) { atlasid id = (atlasid)-1; f(id); @@ -819,7 +819,7 @@ struct reader final : visitor_, false, IsNewest> } template - void read_scenery(std::shared_ptr& ret, const object_proto& pʹ, const object_header_s& h, F&& f) + void read_scenery(bptr& ret, const object_proto& pʹ, const object_header_s& h, F&& f) { const auto coord = global_coords{h.ch->coord(), h.tile}; auto sc_type = scenery_type::none; @@ -852,7 +852,7 @@ ok: } template - std::shared_ptr make_object(const object_header_s& h0, object_proto&& p0, Header&& h, auto&& f) + bptr make_object(const object_header_s& h0, object_proto&& p0, Header&& h, auto&& f) { fm_soft_assert(h0.id != 0); @@ -867,7 +867,7 @@ ok: template void read_object(chunk* ch, F&& f) { - std::shared_ptr obj; + bptr obj; object_id id = 0; auto type = object_type::none; local_coords tile; @@ -899,7 +899,7 @@ ok: obj = make_object(s, move(p), {}, f); goto ok; case object_type::scenery: { - std::shared_ptr objʹ; + bptr objʹ; read_scenery(objʹ, move(p), s, f); obj = move(objʹ); goto ok; -- cgit v1.2.3