From caa299861da35a6a0ab5ada846f718ddc4111ca6 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Sat, 4 Apr 2026 14:38:14 -0400 Subject: [PATCH] refactor: make AGCObject.shallow_copy() non-const prep for moving to ACollector interface --- include/xo/stringtable2/string/IGCObject_DString.hpp | 4 ++-- .../xo/stringtable2/uniquestring/IGCObject_DUniqueString.hpp | 4 ++-- src/stringtable2/IGCObject_DString.cpp | 3 +-- src/stringtable2/IGCObject_DUniqueString.cpp | 3 +-- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/include/xo/stringtable2/string/IGCObject_DString.hpp b/include/xo/stringtable2/string/IGCObject_DString.hpp index 6438215..c04d9a0 100644 --- a/include/xo/stringtable2/string/IGCObject_DString.hpp +++ b/include/xo/stringtable2/string/IGCObject_DString.hpp @@ -52,10 +52,10 @@ namespace xo { // const methods /** memory consumption for this instance **/ static size_type shallow_size(const DString & self) noexcept; - /** copy instance using allocator **/ - static Opaque shallow_copy(const DString & self, obj mm) noexcept; // non-const methods + /** copy instance using allocator **/ + static Opaque shallow_copy(DString & self, obj mm) noexcept; /** during GC: forward immdiate children **/ static size_type forward_children(DString & self, obj gc) noexcept; ///@} diff --git a/include/xo/stringtable2/uniquestring/IGCObject_DUniqueString.hpp b/include/xo/stringtable2/uniquestring/IGCObject_DUniqueString.hpp index 2150dec..4701e50 100644 --- a/include/xo/stringtable2/uniquestring/IGCObject_DUniqueString.hpp +++ b/include/xo/stringtable2/uniquestring/IGCObject_DUniqueString.hpp @@ -52,10 +52,10 @@ namespace xo { // const methods /** memory consumption for this instance **/ static size_type shallow_size(const DUniqueString & self) noexcept; - /** copy instance using allocator **/ - static Opaque shallow_copy(const DUniqueString & self, obj mm) noexcept; // non-const methods + /** copy instance using allocator **/ + static Opaque shallow_copy(DUniqueString & self, obj mm) noexcept; /** during GC: forward immdiate children **/ static size_type forward_children(DUniqueString & self, obj gc) noexcept; ///@} diff --git a/src/stringtable2/IGCObject_DString.cpp b/src/stringtable2/IGCObject_DString.cpp index d34f0ea..0cc3518 100644 --- a/src/stringtable2/IGCObject_DString.cpp +++ b/src/stringtable2/IGCObject_DString.cpp @@ -22,11 +22,10 @@ namespace xo { } auto - IGCObject_DString::shallow_copy(const DString & self, obj mm) noexcept -> Opaque + IGCObject_DString::shallow_copy(DString & self, obj mm) noexcept -> Opaque { return self.shallow_copy(mm); } - auto IGCObject_DString::forward_children(DString & self, obj gc) noexcept -> size_type { diff --git a/src/stringtable2/IGCObject_DUniqueString.cpp b/src/stringtable2/IGCObject_DUniqueString.cpp index b51f0eb..ba3e24e 100644 --- a/src/stringtable2/IGCObject_DUniqueString.cpp +++ b/src/stringtable2/IGCObject_DUniqueString.cpp @@ -22,11 +22,10 @@ namespace xo { } auto - IGCObject_DUniqueString::shallow_copy(const DUniqueString & self, obj mm) noexcept -> Opaque + IGCObject_DUniqueString::shallow_copy(DUniqueString & self, obj mm) noexcept -> Opaque { return self.shallow_copy(mm); } - auto IGCObject_DUniqueString::forward_children(DUniqueString & self, obj gc) noexcept -> size_type {