xo-gc: + remove_gc_root_poly()

This commit is contained in:
Roland Conybeare 2026-03-12 20:30:45 -05:00
commit 5b2b252d67
3 changed files with 7 additions and 1 deletions

View file

@ -142,7 +142,9 @@ namespace xo {
if (!retval)
throw std::runtime_error(tostr("FacetRegistry::try_variant failed",
xtag("AFrom.tseq", typeseq::id<AFrom>()),
xtag("AFrom.tname", typerecd::recd<AFrom>().name()),
xtag("ATo.tseq", typeseq::id<ATo>()),
xtag("ATo.tname", typerecd::recd<ATo>().name()),
xtag("DRepr", from._typeseq())));
return retval;

View file

@ -155,9 +155,12 @@ namespace xo {
**/
bool install_type(const AGCObject & meta) noexcept;
/** add GC root at @p root_addr, with type @p typeseq **/
/** add GC root at @p *p_root **/
void add_gc_root_poly(obj<AGCObject> * p_root) noexcept;
/** remove GC root at @p *p_root **/
void remove_gc_root_poly(obj<AGCObject> * p_root) noexcept;
// ----- collection -----
/** Request immediate collection.

View file

@ -6,6 +6,7 @@ set(SELF_SRCS
init_primitives.cpp
procedure2_register_types.cpp
procedure2_register_facets.cpp
PrimitiveRegistry.cpp
DSimpleRcx.cpp
IRuntimeContext_Any.cpp
IRuntimeContext_DSimpleRcx.cpp