refactor: use GCObjectVisitor api w/ gco_shallow_move

This commit is contained in:
Roland Conybeare 2026-04-06 15:21:48 -04:00
commit 7d3d2d7070
8 changed files with 16 additions and 22 deletions

View file

@ -149,14 +149,8 @@ namespace xo {
return this->size_;
}
auto
DString::shallow_size() const noexcept -> size_type
{
return sizeof(DString) + capacity_;
}
DString *
DString::shallow_move(obj<ACollector> gc) noexcept
DString::gco_shallow_move(obj<AGCObjectVisitor> gc) noexcept
{
// note: not using gc.std_move_for() here
// b/c DString flexible array means not move-constructible

View file

@ -82,7 +82,7 @@ namespace xo {
}
DUniqueString *
DUniqueString::shallow_move(obj<ACollector> gc) noexcept
DUniqueString::gco_shallow_move(obj<AGCObjectVisitor> gc) noexcept
{
// well-posed, but not expected to be used.
//

View file

@ -16,9 +16,9 @@
namespace xo {
namespace scm {
auto
IGCObject_DString::shallow_move(DString & self, obj<ACollector> gc) noexcept -> Opaque
IGCObject_DString::gco_shallow_move(DString & self, obj<AGCObjectVisitor> gc) noexcept -> Opaque
{
return self.shallow_move(gc);
return self.gco_shallow_move(gc);
}
auto
IGCObject_DString::visit_gco_children(DString & self, obj<AGCObjectVisitor> fn) noexcept -> void

View file

@ -16,9 +16,9 @@
namespace xo {
namespace scm {
auto
IGCObject_DUniqueString::shallow_move(DUniqueString & self, obj<ACollector> gc) noexcept -> Opaque
IGCObject_DUniqueString::gco_shallow_move(DUniqueString & self, obj<AGCObjectVisitor> gc) noexcept -> Opaque
{
return self.shallow_move(gc);
return self.gco_shallow_move(gc);
}
auto
IGCObject_DUniqueString::visit_gco_children(DUniqueString & self, obj<AGCObjectVisitor> fn) noexcept -> void