refactor: rename shallow_copy -> shallow_move + streamline

Use RCollector.std_copy_for where appropriate
This commit is contained in:
Roland Conybeare 2026-04-04 16:33:35 -04:00
commit 0898733029
8 changed files with 15 additions and 12 deletions

View file

@ -71,7 +71,7 @@ namespace xo {
///@{
std::size_t shallow_size() const noexcept;
DGlobalEnv * shallow_move(obj<AAllocator> mm) noexcept;
DGlobalEnv * shallow_move(obj<ACollector> gc) noexcept;
std::size_t forward_children(obj<ACollector> gc) noexcept;
///@}

View file

@ -55,7 +55,7 @@ namespace xo {
// non-const methods
/** move instance using allocator **/
static Opaque shallow_move(DGlobalEnv & self, obj<AAllocator> mm) noexcept;
static Opaque shallow_move(DGlobalEnv & self, obj<ACollector> gc) noexcept;
/** during GC: forward immdiate children **/
static size_type forward_children(DGlobalEnv & self, obj<ACollector> gc) noexcept;
///@}

View file

@ -294,7 +294,7 @@ namespace xo {
std::size_t shallow_size() const noexcept;
/** not implemented (SchematikaParser not designed to be copyable) **/
DSchematikaParser * shallow_move(obj<AAllocator> mm) const noexcept;
DSchematikaParser * shallow_move(obj<ACollector> gc) noexcept;
/** forward gc-aware children **/
std::size_t forward_children(obj<ACollector> gc) noexcept;

View file

@ -55,7 +55,7 @@ namespace xo {
// non-const methods
/** move instance using allocator **/
static Opaque shallow_move(DSchematikaParser & self, obj<AAllocator> mm) noexcept;
static Opaque shallow_move(DSchematikaParser & self, obj<ACollector> gc) noexcept;
/** during GC: forward immdiate children **/
static size_type forward_children(DSchematikaParser & self, obj<ACollector> gc) noexcept;
///@}

View file

@ -114,9 +114,9 @@ namespace xo {
}
DGlobalEnv *
DGlobalEnv::shallow_move(obj<AAllocator> mm) noexcept
DGlobalEnv::shallow_move(obj<ACollector> gc) noexcept
{
return mm.std_copy_for<DGlobalEnv>(this);
return gc.std_copy_for<DGlobalEnv>(this);
}
std::size_t

View file

@ -191,10 +191,13 @@ namespace xo {
}
DSchematikaParser *
DSchematikaParser::shallow_move(obj<AAllocator> mm) const noexcept
DSchematikaParser::shallow_move(obj<ACollector> gc) noexcept
{
(void)mm;
(void)gc;
/** TODO: may be feasible to use gc.std_copy_for(this)
* if/when DSchematikaParser is moveable
**/
assert(false);
return nullptr;
}

View file

@ -22,9 +22,9 @@ namespace xo {
}
auto
IGCObject_DGlobalEnv::shallow_move(DGlobalEnv & self, obj<AAllocator> mm) noexcept -> Opaque
IGCObject_DGlobalEnv::shallow_move(DGlobalEnv & self, obj<ACollector> gc) noexcept -> Opaque
{
return self.shallow_move(mm);
return self.shallow_move(gc);
}
auto
IGCObject_DGlobalEnv::forward_children(DGlobalEnv & self, obj<ACollector> gc) noexcept -> size_type

View file

@ -22,9 +22,9 @@ namespace xo {
}
auto
IGCObject_DSchematikaParser::shallow_move(DSchematikaParser & self, obj<AAllocator> mm) noexcept -> Opaque
IGCObject_DSchematikaParser::shallow_move(DSchematikaParser & self, obj<ACollector> gc) noexcept -> Opaque
{
return self.shallow_move(mm);
return self.shallow_move(gc);
}
auto
IGCObject_DSchematikaParser::forward_children(DSchematikaParser & self, obj<ACollector> gc) noexcept -> size_type