feat(furvm): introduce pointer type

Closes: #35
This commit is contained in:
2026-07-11 22:44:18 +02:00
parent 8d3859ce70
commit cd715ae779
5 changed files with 50 additions and 19 deletions
+6
View File
@@ -34,6 +34,7 @@ std::ostream& mod::serialize(std::ostream& os) const {
case mod_type::U16:
case mod_type::U32:
case mod_type::U64: break;
case mod_type::Ptr: detail::serialize(os, type.value.ptr.typeId); break;
case mod_type::Array: {
detail::serialize(os, type.value.array.typeId);
detail::serialize(os, type.value.array.size);
@@ -115,6 +116,11 @@ mod mod::load(std::istream& is) {
case mod_type::U16:
case mod_type::U32:
case mod_type::U64: break;
case mod_type::Ptr: {
mod_type_id typeId = 0;
detail::load(is, typeId);
mod.emplace_type(id, typeId).dispatch();
} break;
case mod_type::Array: {
mod_type_id typeId = 0;
detail::load(is, typeId);