Serialize sections

This commit is contained in:
momo5502
2025-03-22 13:07:43 +01:00
parent 13da0147ff
commit 919f644034

View File

@@ -23,6 +23,32 @@ namespace utils
buffer.read(sym.address);
}
static void serialize(buffer_serializer& buffer, const basic_memory_region& region)
{
buffer.write(region.start);
buffer.write<uint64_t>(region.length);
buffer.write(region.permissions);
}
static void deserialize(buffer_deserializer& buffer, basic_memory_region& region)
{
buffer.read(region.start);
region.length = static_cast<size_t>(buffer.read<uint64_t>());
buffer.read(region.permissions);
}
static void serialize(buffer_serializer& buffer, const mapped_section& mod)
{
buffer.write(mod.name);
buffer.write(mod.region);
}
static void deserialize(buffer_deserializer& buffer, mapped_section& mod)
{
buffer.read(mod.name);
buffer.read(mod.region);
}
static void serialize(buffer_serializer& buffer, const mapped_module& mod)
{
buffer.write(mod.name);
@@ -35,6 +61,8 @@ namespace utils
buffer.write_vector(mod.exports);
buffer.write_map(mod.address_names);
buffer.write_vector(mod.sections);
buffer.write(mod.is_static);
}
@@ -50,6 +78,8 @@ namespace utils
buffer.read_vector(mod.exports);
buffer.read_map(mod.address_names);
buffer.read_vector(mod.sections);
buffer.read(mod.is_static);
}
}