xo-gc stack: + ACollector.shallow_copy()
This commit is contained in:
parent
e08b659a73
commit
0de80c6fc0
2 changed files with 9 additions and 0 deletions
|
|
@ -107,6 +107,10 @@ Return false if installation fails (e.g. memory exhausted) **/
|
|||
|
||||
Require: gc not in progress **/
|
||||
static void assign_member(DX1Collector & self, void * parent, obj<AGCObject> * p_lhs, obj<AGCObject> & rhs);
|
||||
/** allocate copy of source object at address @p src.
|
||||
Source must be owned by this collector.
|
||||
Increments object age **/
|
||||
static void * alloc_copy(DX1Collector & self, std::byte * src);
|
||||
/** evacuate @p *lhs, that refers to state with interface @p lhs_iface,
|
||||
to collector @p d's to-space. Replace *lhs_data with forwarding pointer
|
||||
|
||||
|
|
|
|||
|
|
@ -95,6 +95,11 @@ namespace xo {
|
|||
self.assign_member(parent, p_lhs, rhs);
|
||||
}
|
||||
auto
|
||||
ICollector_DX1Collector::alloc_copy(DX1Collector & self, std::byte * src) -> void *
|
||||
{
|
||||
return self.alloc_copy(src);
|
||||
}
|
||||
auto
|
||||
ICollector_DX1Collector::forward_inplace(DX1Collector & self, AGCObject * lhs_iface, void ** lhs_data) -> void
|
||||
{
|
||||
self.forward_inplace(lhs_iface, lhs_data);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue