/** @file IGCObject_DVsmIfElseContFrame.hpp * * Generated automagically from ingredients: * 1. code generator: * [xo-facet/codegen/genfacet] * arguments: * --input [idl/IGCObject_DVsmIfElseContFrame.json5] * 2. jinja2 template for abstract facet .hpp file: * [iface_facet_repr.hpp.j2] * 3. idl for facet methods * [idl/IGCObject_DVsmIfElseContFrame.json5] **/ #pragma once #include "GCObject.hpp" #include #include #include "DVsmIfElseContFrame.hpp" namespace xo { namespace scm { class IGCObject_DVsmIfElseContFrame; } } namespace xo { namespace facet { template <> struct FacetImplementation { using ImplType = xo::mm::IGCObject_Xfer ; }; } } namespace xo { namespace scm { /** @class IGCObject_DVsmIfElseContFrame **/ class IGCObject_DVsmIfElseContFrame { public: /** @defgroup scm-gcobject-dvsmifelsecontframe-type-traits **/ ///@{ using size_type = xo::mm::AGCObject::size_type; using AAllocator = xo::mm::AGCObject::AAllocator; using AGCObjectVisitor = xo::mm::AGCObject::AGCObjectVisitor; using VisitReason = xo::mm::AGCObject::VisitReason; using Copaque = xo::mm::AGCObject::Copaque; using Opaque = xo::mm::AGCObject::Opaque; ///@} /** @defgroup scm-gcobject-dvsmifelsecontframe-methods **/ ///@{ // const methods // non-const methods /** move instance using object visitor. Arguably abusing the word 'visitor' here **/ static Opaque gco_shallow_move(DVsmIfElseContFrame & self, obj gc) noexcept; /** Invoke fn.visit_child(iface,data) for each child GCObject pointer. Context: provides address of data pointer so it can be updated in place when @p fn invokes garbage collector reentry point **/ static void visit_gco_children(DVsmIfElseContFrame & self, VisitReason reason, obj fn) noexcept; ///@} }; } /*namespace scm*/ } /*namespace xo*/ /* end */