xo-pyexpression/src/interpreter2/DVsmRcx.cpp
Roland Conybeare 3220cb1b59 xo-reader2 stack: + ARuntimeContext.collector()
access Collector API (if present) from runtime context
2026-03-24 21:59:59 -04:00

51 lines
1.1 KiB
C++

/** @file DVsmRcx.cpp
*
* @author Roland Conybeare, Feb 2026
**/
#include "DVsmRcx.hpp"
#include "VirtualSchematikaMachine.hpp"
#include <xo/facet/FacetRegistry.hpp>
namespace xo {
using xo::mm::AAllocator;
using xo::mm::ACollector;
namespace scm {
DVsmRcx::DVsmRcx(VirtualSchematikaMachine * vsm) : vsm_{vsm} {}
obj<AAllocator>
DVsmRcx::allocator() const noexcept
{
return vsm_->allocator();
}
obj<ACollector>
DVsmRcx::collector() const noexcept
{
return vsm_->allocator().try_to_facet<ACollector>();
}
obj<AAllocator>
DVsmRcx::error_allocator() const noexcept
{
return vsm_->error_allocator();
}
StringTable *
DVsmRcx::stringtable() const noexcept
{
return vsm_->stringtable();
}
void
DVsmRcx::visit_pools(const MemorySizeVisitor & visitor) const
{
vsm_->visit_pools(visitor);
}
} /*namespace scm*/
} /*namespace xo*/
/* end DVsmRcx.cpp */