/** @file IRuntimeContext_DSimpleRcx.hpp * * Generated automagically from ingredients: * 1. code generator: * [xo-facet/codegen/genfacet] * arguments: * --input [idl/IRuntimeContext_DSimpleRcx.json5] * 2. jinja2 template for abstract facet .hpp file: * [iface_facet_repr.hpp.j2] * 3. idl for facet methods * [idl/IRuntimeContext_DSimpleRcx.json5] **/ #pragma once #include "RuntimeContext.hpp" #include "DSimpleRcx.hpp" namespace xo { namespace scm { class IRuntimeContext_DSimpleRcx; } } namespace xo { namespace facet { template <> struct FacetImplementation { using ImplType = xo::scm::IRuntimeContext_Xfer ; }; } } namespace xo { namespace scm { /** @class IRuntimeContext_DSimpleRcx **/ class IRuntimeContext_DSimpleRcx { public: /** @defgroup scm-runtimecontext-dsimplercx-type-traits **/ ///@{ using AAllocator = xo::scm::ARuntimeContext::AAllocator; using ACollector = xo::scm::ARuntimeContext::ACollector; using MemorySizeVisitor = xo::scm::ARuntimeContext::MemorySizeVisitor; using Copaque = xo::scm::ARuntimeContext::Copaque; using Opaque = xo::scm::ARuntimeContext::Opaque; ///@} /** @defgroup scm-runtimecontext-dsimplercx-methods **/ ///@{ // const methods /** default allocator to use for objects **/ static obj allocator(const DSimpleRcx & self) noexcept; /** collector facet for allocator. If non-null, same data pointer as allocator **/ static obj collector(const DSimpleRcx & self) noexcept; /** last-resort allocator for erros. e.g. regular allocator exhausted **/ static obj error_allocator(const DSimpleRcx & self) noexcept; /** stringtable for unique symbols **/ static StringTable * stringtable(const DSimpleRcx & self) noexcept; /** invoke visitor for each distinct memory pool **/ static void visit_pools(const DSimpleRcx & self, MemorySizeVisitor visitor); // non-const methods ///@} }; } /*namespace scm*/ } /*namespace xo*/ /* end */