xo-interpreter2 stack: + DPrimitive_gco_3_dict_string_gco + dict_upsert

This commit is contained in:
Roland Conybeare 2026-03-04 14:34:57 +11:00
commit b39f1bb085
15 changed files with 438 additions and 0 deletions

View file

@ -20,6 +20,9 @@ set(SELF_SRCS
IGCObject_DPrimitive_gco_2_gco_gco.cpp
IProcedure_DPrimitive_gco_2_gco_gco.cpp
IPrintable_DPrimitive_gco_2_gco_gco.cpp
IGCObject_DPrimitive_gco_3_dict_string_gco.cpp
IProcedure_DPrimitive_gco_3_dict_string_gco.cpp
IPrintable_DPrimitive_gco_3_dict_string_gco.cpp
)
xo_add_shared_library4(${SELF_LIB} ${PROJECT_NAME}Targets ${PROJECT_VERSION} 1 ${SELF_SRCS})

View file

@ -0,0 +1,39 @@
/** @file IGCObject_DPrimitive_gco_3_dict_string_gco.cpp
*
* Generated automagically from ingredients:
* 1. code generator:
* [xo-facet/codegen/genfacet]
* arguments:
* --input [idl/IGCObject_DPrimitive_gco_3_dict_string_gco.json5]
* 2. jinja2 template for abstract facet .hpp file:
* [iface_facet_any.hpp.j2]
* 3. idl for facet methods
* [idl/IGCObject_DPrimitive_gco_3_dict_string_gco.json5]
**/
#include "detail/IGCObject_DPrimitive_gco_3_dict_string_gco.hpp"
namespace xo {
namespace scm {
auto
IGCObject_DPrimitive_gco_3_dict_string_gco::shallow_size(const DPrimitive_gco_3_dict_string_gco & self) noexcept -> size_type
{
return self.shallow_size();
}
auto
IGCObject_DPrimitive_gco_3_dict_string_gco::shallow_copy(const DPrimitive_gco_3_dict_string_gco & self, obj<AAllocator> mm) noexcept -> Opaque
{
return self.shallow_copy(mm);
}
auto
IGCObject_DPrimitive_gco_3_dict_string_gco::forward_children(DPrimitive_gco_3_dict_string_gco & self, obj<ACollector> gc) noexcept -> size_type
{
return self.forward_children(gc);
}
} /*namespace scm*/
} /*namespace xo*/
/* end IGCObject_DPrimitive_gco_3_dict_string_gco.cpp */

View file

@ -0,0 +1,28 @@
/** @file IPrintable_DPrimitive_gco_3_dict_string_gco.cpp
*
* Generated automagically from ingredients:
* 1. code generator:
* [xo-facet/codegen/genfacet]
* arguments:
* --input [idl/IPrintable_DPrimitive_gco_3_dict_string_gco.json5]
* 2. jinja2 template for abstract facet .hpp file:
* [iface_facet_any.hpp.j2]
* 3. idl for facet methods
* [idl/IPrintable_DPrimitive_gco_3_dict_string_gco.json5]
**/
#include "detail/IPrintable_DPrimitive_gco_3_dict_string_gco.hpp"
namespace xo {
namespace scm {
auto
IPrintable_DPrimitive_gco_3_dict_string_gco::pretty(const DPrimitive_gco_3_dict_string_gco & self, const ppindentinfo & ppii) -> bool
{
return self.pretty(ppii);
}
} /*namespace scm*/
} /*namespace xo*/
/* end IPrintable_DPrimitive_gco_3_dict_string_gco.cpp */

View file

@ -0,0 +1,39 @@
/** @file IProcedure_DPrimitive_gco_3_dict_string_gco.cpp
*
* Generated automagically from ingredients:
* 1. code generator:
* [xo-facet/codegen/genfacet]
* arguments:
* --input [idl/IProcedure_DPrimitive_gco_3_dict_string_gco.json5]
* 2. jinja2 template for abstract facet .hpp file:
* [iface_facet_any.hpp.j2]
* 3. idl for facet methods
* [idl/IProcedure_DPrimitive_gco_3_dict_string_gco.json5]
**/
#include "detail/IProcedure_DPrimitive_gco_3_dict_string_gco.hpp"
namespace xo {
namespace scm {
auto
IProcedure_DPrimitive_gco_3_dict_string_gco::is_nary(const DPrimitive_gco_3_dict_string_gco & self) noexcept -> bool
{
return self.is_nary();
}
auto
IProcedure_DPrimitive_gco_3_dict_string_gco::n_args(const DPrimitive_gco_3_dict_string_gco & self) noexcept -> std::int32_t
{
return self.n_args();
}
auto
IProcedure_DPrimitive_gco_3_dict_string_gco::apply_nocheck(DPrimitive_gco_3_dict_string_gco & self, obj<ARuntimeContext> rcx, const DArray * args) -> obj<AGCObject>
{
return self.apply_nocheck(rcx, args);
}
} /*namespace scm*/
} /*namespace xo*/
/* end IProcedure_DPrimitive_gco_3_dict_string_gco.cpp */

View file

@ -8,6 +8,7 @@
#include "Primitive_gco_0.hpp"
#include "Primitive_gco_1_gco.hpp"
#include "Primitive_gco_2_gco_gco.hpp"
#include "Primitive_gco_3_dict_string_gco.hpp"
#include <xo/gc/GCObject.hpp>
#include <xo/printable2/Printable.hpp>
@ -39,9 +40,14 @@ namespace xo {
FacetRegistry::register_impl<AGCObject, DPrimitive_gco_2_gco_gco>();
FacetRegistry::register_impl<APrintable, DPrimitive_gco_2_gco_gco>();
FacetRegistry::register_impl<AProcedure, DPrimitive_gco_3_dict_string_gco>();
FacetRegistry::register_impl<AGCObject, DPrimitive_gco_3_dict_string_gco>();
FacetRegistry::register_impl<APrintable, DPrimitive_gco_3_dict_string_gco>();
log && log(xtag("DSimpleRcx.tseq", typeseq::id<DSimpleRcx>()));
log && log(xtag("DPrimitive_gco_1_gco.tseq", typeseq::id<DPrimitive_gco_1_gco>()));
log && log(xtag("DPrimitive_gco_2_gco_gco.tseq", typeseq::id<DPrimitive_gco_2_gco_gco>()));
log && log(xtag("DPrimitive_gco_3_dict_string_gco.tseq", typeseq::id<DPrimitive_gco_3_dict_string_gco>()));
log && log(xtag("ARuntimeContext.tseq", typeseq::id<ARuntimeContext>()));
log && log(xtag("AProcedure.tseq", typeseq::id<AProcedure>()));

View file

@ -8,6 +8,7 @@
#include "detail/IGCObject_DPrimitive_gco_0.hpp"
#include "detail/IGCObject_DPrimitive_gco_1_gco.hpp"
#include "detail/IGCObject_DPrimitive_gco_2_gco_gco.hpp"
#include "detail/IGCObject_DPrimitive_gco_3_dict_string_gco.hpp"
#include <xo/indentlog/scope.hpp>
namespace xo {
@ -30,6 +31,7 @@ namespace xo {
ok &= gc.install_type(impl_for<AGCObject, DPrimitive_gco_0>());
ok &= gc.install_type(impl_for<AGCObject, DPrimitive_gco_1_gco>());
ok &= gc.install_type(impl_for<AGCObject, DPrimitive_gco_2_gco_gco>());
ok &= gc.install_type(impl_for<AGCObject, DPrimitive_gco_3_dict_string_gco>());
return ok;
}