@@ -92,6 +92,8 @@ public:
|
|||||||
auto erase_thing(Args&&... args) {
|
auto erase_thing(Args&&... args) {
|
||||||
return m_things.erase(std::forward<Args>(args)...);
|
return m_things.erase(std::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
thing_allocator<std::byte> thing_alloc() const { return m_thingAllocator; }
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* @brief Removes unreferenced things from the thing list.
|
* @brief Removes unreferenced things from the thing list.
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ void executor::step() {
|
|||||||
switch (instr) {
|
switch (instr) {
|
||||||
case instruction_t::NoOperation: break;
|
case instruction_t::NoOperation: break;
|
||||||
case instruction_t::PushB2I: {
|
case instruction_t::PushB2I: {
|
||||||
push_thing({ thing_t::Int32, m_context->m_thingAllocator })->int32() = frame.mod->byte(frame.position++);
|
push_thing({ thing_t::Int32, m_context->thing_alloc() })->int32() = frame.mod->byte(frame.position++);
|
||||||
} break;
|
} break;
|
||||||
case instruction_t::Drop: {
|
case instruction_t::Drop: {
|
||||||
pop_thing();
|
pop_thing();
|
||||||
|
|||||||
Reference in New Issue
Block a user