refactor(furvm): improve thing value access

This commit is contained in:
2026-09-04 21:19:03 +02:00
parent 0354ec1e79
commit 24a9530abc
3 changed files with 89 additions and 2 deletions
+9
View File
@@ -1,3 +1,4 @@
#include "furvm/exceptions.hpp"
#include "furvm/furvm.hpp"
#include "furvm/thing.hpp"
@@ -77,4 +78,12 @@ TEST(ThingOps, Iterators) {
}
}
TEST(ThingOps, Access) {
furvm::thing thing{ furvm::thing_type{ furvm::thing_type::U8 } };
EXPECT_NO_THROW(thing.get<furvm::u8>());
EXPECT_THROW(thing.get<furvm::s8>(), furvm::bad_thing_access);
EXPECT_THROW(thing.get<furvm::s32>(), furvm::bad_thing_access);
EXPECT_THROW(thing.get<void*>(), furvm::bad_thing_access);
}
} // namespace