refactor: + narrower interface for gc pointer forwarding

add AGCObjectVisitor, instead of requiring ACollector.
This commit is contained in:
Roland Conybeare 2026-04-05 23:53:02 -04:00
commit fdc3054c7c
46 changed files with 187 additions and 165 deletions

View file

@ -70,16 +70,14 @@ namespace xo {
return gc.std_move_for(this);
}
std::size_t
DVarRef::forward_children(obj<ACollector> gc) noexcept
void
DVarRef::visit_gco_children(obj<AGCObjectVisitor> gc) noexcept
{
gc.forward_inplace(&vardef_);
gc.visit_child(&vardef_);
//auto iface = xo::facet::impl_for<AGCObject,DVariable>();
//gc.forward_inplace(&iface, (void **)vardef_.data_);
// TODO: concept to indicate that no gc pointers in Binding
return shallow_size();
}
// printable facet