refactor: rename GCObject.shallow_copy -> shallow_move
resolve conflict since relying on move constructor in std_copy_for
This commit is contained in:
parent
45dd3749e0
commit
06161d2b50
164 changed files with 255 additions and 255 deletions
|
|
@ -56,10 +56,10 @@
|
|||
},
|
||||
],
|
||||
nonconst_methods: [
|
||||
// Opaque shallow_copy(obj<AAllocator>>) noexcept
|
||||
// Opaque shallow_move(obj<AAllocator>>) noexcept
|
||||
{
|
||||
name: "shallow_copy",
|
||||
doc: ["copy instance using allocator"],
|
||||
name: "shallow_move",
|
||||
doc: ["move instance using allocator"],
|
||||
return_type: "Opaque",
|
||||
args:[
|
||||
{type: "obj<AAllocator>", name: "mm"},
|
||||
|
|
|
|||
|
|
@ -66,8 +66,8 @@ public:
|
|||
virtual size_type shallow_size(Copaque data) const noexcept = 0;
|
||||
|
||||
// nonconst methods
|
||||
/** copy instance using allocator **/
|
||||
virtual Opaque shallow_copy(Opaque data, obj<AAllocator> mm) const noexcept = 0;
|
||||
/** move instance using allocator **/
|
||||
virtual Opaque shallow_move(Opaque data, obj<AAllocator> mm) const noexcept = 0;
|
||||
/** during GC: forward immdiate children **/
|
||||
virtual size_type forward_children(Opaque data, obj<ACollector> gc) const noexcept = 0;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ namespace mm {
|
|||
[[noreturn]] size_type shallow_size(Copaque) const noexcept override { _fatal(); }
|
||||
|
||||
// nonconst methods
|
||||
[[noreturn]] Opaque shallow_copy(Opaque, obj<AAllocator>) const noexcept override;
|
||||
[[noreturn]] Opaque shallow_move(Opaque, obj<AAllocator>) const noexcept override;
|
||||
[[noreturn]] size_type forward_children(Opaque, obj<ACollector>) const noexcept override;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace mm {
|
|||
}
|
||||
|
||||
// non-const methods
|
||||
Opaque shallow_copy(Opaque data, obj<AAllocator> mm) const noexcept override {
|
||||
return I::shallow_copy(_dcast(data), mm);
|
||||
Opaque shallow_move(Opaque data, obj<AAllocator> mm) const noexcept override {
|
||||
return I::shallow_move(_dcast(data), mm);
|
||||
}
|
||||
size_type forward_children(Opaque data, obj<ACollector> gc) const noexcept override {
|
||||
return I::forward_children(_dcast(data), gc);
|
||||
|
|
|
|||
|
|
@ -58,9 +58,9 @@ public:
|
|||
void * std_copy_for(const T * src) noexcept {
|
||||
void * mem = this->alloc_copy_for(src);
|
||||
if (mem) {
|
||||
new (mem) T(std::move(*src));
|
||||
return new (mem) T(std::move(*src));
|
||||
}
|
||||
return (T *)mem;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
/** forward faceted object pointer in place. Defined in GCObject.hpp to avoid #include cycle **/
|
||||
|
|
|
|||
|
|
@ -60,8 +60,8 @@ public:
|
|||
}
|
||||
|
||||
// non-const methods (still const in router!)
|
||||
Opaque shallow_copy(obj<AAllocator> mm) noexcept {
|
||||
return O::iface()->shallow_copy(O::data(), mm);
|
||||
Opaque shallow_move(obj<AAllocator> mm) noexcept {
|
||||
return O::iface()->shallow_move(O::data(), mm);
|
||||
}
|
||||
size_type forward_children(obj<ACollector> gc) noexcept {
|
||||
return O::iface()->forward_children(O::data(), gc);
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ IGCObject_Any::_valid
|
|||
// nonconst methods
|
||||
|
||||
auto
|
||||
IGCObject_Any::shallow_copy(Opaque, obj<AAllocator>) const noexcept -> Opaque
|
||||
IGCObject_Any::shallow_move(Opaque, obj<AAllocator>) const noexcept -> Opaque
|
||||
{
|
||||
_fatal();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DApplyExpr * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DApplyExpr * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
size_t shallow_size() const noexcept;
|
||||
DConstant * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DConstant * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DDefineExpr * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DDefineExpr * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DGlobalSymtab * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DGlobalSymtab * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DIfElseExpr * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DIfElseExpr * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DLambdaExpr * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DLambdaExpr * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DLocalSymtab * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DLocalSymtab * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DSequenceExpr * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DSequenceExpr * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
size_t shallow_size() const noexcept;
|
||||
DTypename * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DTypename * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
size_t shallow_size() const noexcept;
|
||||
DVarRef * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DVarRef * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
size_t shallow_size() const noexcept;
|
||||
DVariable * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DVariable * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DDefineExpr & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DDefineExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DDefineExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DDefineExpr & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DApplyExpr & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DApplyExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DApplyExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DApplyExpr & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DConstant & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DConstant & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DConstant & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DConstant & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DIfElseExpr & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DIfElseExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DIfElseExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DIfElseExpr & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DLambdaExpr & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DLambdaExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DLambdaExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DLambdaExpr & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DSequenceExpr & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DSequenceExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DSequenceExpr & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DSequenceExpr & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVarRef & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVarRef & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVarRef & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVarRef & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DGlobalSymtab & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DGlobalSymtab & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DGlobalSymtab & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DGlobalSymtab & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DLocalSymtab & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DLocalSymtab & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DLocalSymtab & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DLocalSymtab & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DTypename & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DTypename & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DTypename & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DTypename & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVariable & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVariable & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVariable & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVariable & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DApplyExpr *
|
||||
DApplyExpr::shallow_copy(obj<AAllocator> mm) const noexcept {
|
||||
DApplyExpr::shallow_move(obj<AAllocator> mm) const noexcept {
|
||||
DApplyExpr * copy = (DApplyExpr *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
if (copy) {
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DConstant *
|
||||
DConstant::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DConstant::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DConstant * copy = (DConstant *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DDefineExpr *
|
||||
DDefineExpr::shallow_copy(obj<AAllocator> mm) noexcept
|
||||
DDefineExpr::shallow_move(obj<AAllocator> mm) noexcept
|
||||
{
|
||||
return mm.std_copy_for(this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -261,7 +261,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DGlobalSymtab *
|
||||
DGlobalSymtab::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DGlobalSymtab::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
/** can't use std_copy_for because of non-copyable dp<repr_type>
|
||||
*
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DIfElseExpr *
|
||||
DIfElseExpr::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DIfElseExpr::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DIfElseExpr * copy = (DIfElseExpr *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
|
|
|
|||
|
|
@ -140,7 +140,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DLambdaExpr *
|
||||
DLambdaExpr::shallow_copy(obj<AAllocator> mm) const noexcept {
|
||||
DLambdaExpr::shallow_move(obj<AAllocator> mm) const noexcept {
|
||||
DLambdaExpr * copy = (DLambdaExpr *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
if (copy) {
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DLocalSymtab *
|
||||
DLocalSymtab::shallow_copy(obj<AAllocator> mm) noexcept
|
||||
DLocalSymtab::shallow_move(obj<AAllocator> mm) noexcept
|
||||
{
|
||||
return mm.std_copy_for(this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DSequenceExpr *
|
||||
DSequenceExpr::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DSequenceExpr::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DSequenceExpr * copy = (DSequenceExpr *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DTypename *
|
||||
DTypename::shallow_copy(obj<AAllocator> mm) noexcept
|
||||
DTypename::shallow_move(obj<AAllocator> mm) noexcept
|
||||
{
|
||||
return mm.std_copy_for(this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVarRef *
|
||||
DVarRef::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DVarRef::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DVarRef * copy = (DVarRef *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVariable *
|
||||
DVariable::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DVariable::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DVariable * copy = (DVariable *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DApplyExpr::shallow_copy(DApplyExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DApplyExpr::shallow_move(DApplyExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DApplyExpr::forward_children(DApplyExpr & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DConstant::shallow_copy(DConstant & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DConstant::shallow_move(DConstant & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DConstant::forward_children(DConstant & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DDefineExpr::shallow_copy(DDefineExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DDefineExpr::shallow_move(DDefineExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DDefineExpr::forward_children(DDefineExpr & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DGlobalSymtab::shallow_copy(DGlobalSymtab & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DGlobalSymtab::shallow_move(DGlobalSymtab & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DGlobalSymtab::forward_children(DGlobalSymtab & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DIfElseExpr::shallow_copy(DIfElseExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DIfElseExpr::shallow_move(DIfElseExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DIfElseExpr::forward_children(DIfElseExpr & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DLambdaExpr::shallow_copy(DLambdaExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DLambdaExpr::shallow_move(DLambdaExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DLambdaExpr::forward_children(DLambdaExpr & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DLocalSymtab::shallow_copy(DLocalSymtab & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DLocalSymtab::shallow_move(DLocalSymtab & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DLocalSymtab::forward_children(DLocalSymtab & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DSequenceExpr::shallow_copy(DSequenceExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DSequenceExpr::shallow_move(DSequenceExpr & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DSequenceExpr::forward_children(DSequenceExpr & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DTypename::shallow_copy(DTypename & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DTypename::shallow_move(DTypename & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DTypename::forward_children(DTypename & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVarRef::shallow_copy(DVarRef & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVarRef::shallow_move(DVarRef & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVarRef::forward_children(DVarRef & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVariable::shallow_copy(DVariable & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVariable::shallow_move(DVariable & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVariable::forward_children(DVariable & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -870,7 +870,7 @@ namespace xo {
|
|||
|
||||
//obj<AAllocator, DX1Collector> gc_gco(gc);
|
||||
|
||||
void * to_dest = iface->shallow_copy(from_src, gc->ref<AAllocator>());
|
||||
void * to_dest = iface->shallow_move(from_src, gc->ref<AAllocator>());
|
||||
|
||||
log && log(xtag("from_src", from_src), xtag("to_dest", to_dest));
|
||||
log && log(xtag("tseq", info.tseq()),
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DClosure * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DClosure * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DLocalEnv * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DLocalEnv * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ namespace xo {
|
|||
|
||||
/** gcobject facet **/
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DVsmApplyClosureFrame * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DVsmApplyClosureFrame * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
/** pretty-printing support **/
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ namespace xo {
|
|||
void assign_fn(obj<AGCObject> x) { this->fn_ = x; }
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DVsmApplyFrame * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DVsmApplyFrame * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
/** pretty-printing support **/
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DVsmDefContFrame * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DVsmDefContFrame * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ namespace xo {
|
|||
int32_t increment_arg() { return ++i_arg_; }
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DVsmEvalArgsFrame * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DVsmEvalArgsFrame * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
bool pretty(const ppindentinfo & ppii) const;
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DVsmIfElseContFrame * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DVsmIfElseContFrame * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DVsmSeqContFrame * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DVsmSeqContFrame * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVsmDefContFrame & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVsmDefContFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVsmDefContFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVsmDefContFrame & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DClosure & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DClosure & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DClosure & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DClosure & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVsmApplyClosureFrame & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVsmApplyClosureFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVsmApplyClosureFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVsmApplyClosureFrame & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVsmApplyFrame & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVsmApplyFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVsmApplyFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVsmApplyFrame & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVsmEvalArgsFrame & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVsmEvalArgsFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVsmEvalArgsFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVsmEvalArgsFrame & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DLocalEnv & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DLocalEnv & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DLocalEnv & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DLocalEnv & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVsmIfElseContFrame & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVsmIfElseContFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVsmIfElseContFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVsmIfElseContFrame & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVsmSeqContFrame & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVsmSeqContFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVsmSeqContFrame & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVsmSeqContFrame & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -153,7 +153,7 @@ namespace xo {
|
|||
/** shallow copy during gc cycle. Not implemented! Only intending to support
|
||||
* VSM as virtual root
|
||||
**/
|
||||
DVirtualSchematikaMachine * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DVirtualSchematikaMachine * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
|
||||
/** forward gc-aware child pointers
|
||||
**/
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DVirtualSchematikaMachine & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DVirtualSchematikaMachine & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DVirtualSchematikaMachine & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DVirtualSchematikaMachine & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DClosure *
|
||||
DClosure::shallow_copy(obj<AAllocator> mm) const noexcept {
|
||||
DClosure::shallow_move(obj<AAllocator> mm) const noexcept {
|
||||
DClosure * copy = (DClosure *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
if (copy)
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DLocalEnv *
|
||||
DLocalEnv::shallow_copy(obj<AAllocator> mm) const noexcept {
|
||||
DLocalEnv::shallow_move(obj<AAllocator> mm) const noexcept {
|
||||
DLocalEnv * copy = (DLocalEnv *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
if (copy)
|
||||
|
|
|
|||
|
|
@ -954,7 +954,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVirtualSchematikaMachine *
|
||||
DVirtualSchematikaMachine::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DVirtualSchematikaMachine::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
(void)mm;
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVsmApplyClosureFrame *
|
||||
DVsmApplyClosureFrame::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DVsmApplyClosureFrame::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DVsmApplyClosureFrame * copy
|
||||
= (DVsmApplyClosureFrame *)mm.alloc_copy((std::byte *)this);
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVsmApplyFrame *
|
||||
DVsmApplyFrame::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DVsmApplyFrame::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DVsmApplyFrame * copy = (DVsmApplyFrame *)mm.alloc_copy((std::byte *)this);
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVsmDefContFrame *
|
||||
DVsmDefContFrame::shallow_copy(obj<AAllocator> mm) noexcept
|
||||
DVsmDefContFrame::shallow_move(obj<AAllocator> mm) noexcept
|
||||
{
|
||||
return mm.std_copy_for<DVsmDefContFrame>(this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVsmEvalArgsFrame *
|
||||
DVsmEvalArgsFrame::shallow_copy(obj<AAllocator> mm) const noexcept
|
||||
DVsmEvalArgsFrame::shallow_move(obj<AAllocator> mm) const noexcept
|
||||
{
|
||||
DVsmEvalArgsFrame * copy
|
||||
= (DVsmEvalArgsFrame *)mm.alloc_copy((std::byte *)this);
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVsmIfElseContFrame *
|
||||
DVsmIfElseContFrame::shallow_copy(obj<AAllocator> mm) noexcept
|
||||
DVsmIfElseContFrame::shallow_move(obj<AAllocator> mm) noexcept
|
||||
{
|
||||
return mm.std_copy_for<DVsmIfElseContFrame>(this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ namespace xo {
|
|||
}
|
||||
|
||||
DVsmSeqContFrame *
|
||||
DVsmSeqContFrame::shallow_copy(obj<AAllocator> mm) noexcept
|
||||
DVsmSeqContFrame::shallow_move(obj<AAllocator> mm) noexcept
|
||||
{
|
||||
return mm.std_copy_for<DVsmSeqContFrame>(this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DClosure::shallow_copy(DClosure & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DClosure::shallow_move(DClosure & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DClosure::forward_children(DClosure & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVsmApplyClosureFrame::shallow_copy(DVsmApplyClosureFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVsmApplyClosureFrame::shallow_move(DVsmApplyClosureFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVsmApplyClosureFrame::forward_children(DVsmApplyClosureFrame & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVsmApplyFrame::shallow_copy(DVsmApplyFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVsmApplyFrame::shallow_move(DVsmApplyFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVsmApplyFrame::forward_children(DVsmApplyFrame & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVsmDefContFrame::shallow_copy(DVsmDefContFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVsmDefContFrame::shallow_move(DVsmDefContFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVsmDefContFrame::forward_children(DVsmDefContFrame & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVsmEvalArgsFrame::shallow_copy(DVsmEvalArgsFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVsmEvalArgsFrame::shallow_move(DVsmEvalArgsFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVsmEvalArgsFrame::forward_children(DVsmEvalArgsFrame & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVsmIfElseContFrame::shallow_copy(DVsmIfElseContFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVsmIfElseContFrame::shallow_move(DVsmIfElseContFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVsmIfElseContFrame::forward_children(DVsmIfElseContFrame & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVsmSeqContFrame::shallow_copy(DVsmSeqContFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVsmSeqContFrame::shallow_move(DVsmSeqContFrame & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVsmSeqContFrame::forward_children(DVsmSeqContFrame & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DLocalEnv::shallow_copy(DLocalEnv & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DLocalEnv::shallow_move(DLocalEnv & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DLocalEnv::forward_children(DLocalEnv & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@ namespace xo {
|
|||
}
|
||||
|
||||
auto
|
||||
IGCObject_DVirtualSchematikaMachine::shallow_copy(DVirtualSchematikaMachine & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
IGCObject_DVirtualSchematikaMachine::shallow_move(DVirtualSchematikaMachine & self, obj<AAllocator> mm) noexcept -> Opaque
|
||||
{
|
||||
return self.shallow_copy(mm);
|
||||
return self.shallow_move(mm);
|
||||
}
|
||||
auto
|
||||
IGCObject_DVirtualSchematikaMachine::forward_children(DVirtualSchematikaMachine & self, obj<ACollector> gc) noexcept -> size_type
|
||||
|
|
|
|||
|
|
@ -148,7 +148,7 @@ namespace xo {
|
|||
/** shallow memory consumption. Excludes child objects **/
|
||||
AAllocator::size_type shallow_size() const noexcept;
|
||||
/** return shallow copy of this array, using memory from @p mm **/
|
||||
DArray * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DArray * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
/** forward elements to @p gc to-space; replace originals with forarding pointers **/
|
||||
AAllocator::size_type forward_children(obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ namespace xo {
|
|||
// GCObject facet
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DBoolean * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DBoolean * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -203,7 +203,7 @@ namespace xo {
|
|||
/** shallow memory consumption. Excludes child objects **/
|
||||
AAllocator::size_type shallow_size() const noexcept;
|
||||
/** return shallow copy of this array, using memory from @p mm **/
|
||||
DDictionary * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DDictionary * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
/** forward elements to @p gc to-space; replace originals with forarding pointers **/
|
||||
AAllocator::size_type forward_children(obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ namespace xo {
|
|||
|
||||
// GCObject facet
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DFloat * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DFloat * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ namespace xo {
|
|||
// GCObject facet
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DInteger * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DInteger * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ namespace xo {
|
|||
/** @defgroup xo-scm-list-gcobject-facet gcobject facet **/
|
||||
///@{
|
||||
size_type shallow_size() const noexcept;
|
||||
DList * shallow_copy(obj<AAllocator> mm) noexcept;
|
||||
DList * shallow_move(obj<AAllocator> mm) noexcept;
|
||||
size_type forward_children(obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ namespace xo {
|
|||
///@{
|
||||
|
||||
std::size_t shallow_size() const noexcept;
|
||||
DRuntimeError * shallow_copy(obj<AAllocator> mm) const noexcept;
|
||||
DRuntimeError * shallow_move(obj<AAllocator> mm) const noexcept;
|
||||
std::size_t forward_children(obj<ACollector> gc) noexcept;
|
||||
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DArray & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DArray & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DArray & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DArray & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DBoolean & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DBoolean & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DBoolean & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DBoolean & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DDictionary & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DDictionary & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DDictionary & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DDictionary & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DRuntimeError & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DRuntimeError & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DRuntimeError & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DRuntimeError & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace xo {
|
|||
static size_type shallow_size(const DList & self) noexcept;
|
||||
|
||||
// non-const methods
|
||||
/** copy instance using allocator **/
|
||||
static Opaque shallow_copy(DList & self, obj<AAllocator> mm) noexcept;
|
||||
/** move instance using allocator **/
|
||||
static Opaque shallow_move(DList & self, obj<AAllocator> mm) noexcept;
|
||||
/** during GC: forward immdiate children **/
|
||||
static size_type forward_children(DList & self, obj<ACollector> gc) noexcept;
|
||||
///@}
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue