[−][src]Trait mmtk::MutatorContext
Each GC plan should provide their implementation of a MutatorContext. Note that this trait is no longer needed as we removed per-plan mutator implementation and we will remove this trait as well in the future.
Required methods
pub fn prepare(&mut self, tls: OpaquePointer)
[src]
pub fn release(&mut self, tls: OpaquePointer)
[src]
pub fn alloc(
&mut self,
size: usize,
align: usize,
offset: isize,
allocator: AllocationType
) -> Address
[src]
&mut self,
size: usize,
align: usize,
offset: isize,
allocator: AllocationType
) -> Address
pub fn post_alloc(
&mut self,
refer: ObjectReference,
bytes: usize,
allocator: AllocationType
)
[src]
&mut self,
refer: ObjectReference,
bytes: usize,
allocator: AllocationType
)
pub fn get_tls(&self) -> OpaquePointer
[src]
pub fn barrier(&mut self) -> &mut dyn Barrier
[src]
Provided methods
pub fn flush_remembered_sets(&mut self)
[src]
pub fn flush(&mut self)
[src]
pub fn record_modified_node(&mut self, obj: ObjectReference)
[src]
pub fn record_modified_edge(&mut self, slot: Address)
[src]
Implementors
impl<P: Plan<Mutator = Self>> MutatorContext<<P as Plan>::VM> for Mutator<P>
[src]
pub fn prepare(&mut self, tls: OpaquePointer)
[src]
pub fn release(&mut self, tls: OpaquePointer)
[src]
pub fn alloc(
&mut self,
size: usize,
align: usize,
offset: isize,
allocator: AllocationType
) -> Address
[src]
&mut self,
size: usize,
align: usize,
offset: isize,
allocator: AllocationType
) -> Address
pub fn post_alloc(
&mut self,
refer: ObjectReference,
_bytes: usize,
allocator: AllocationType
)
[src]
&mut self,
refer: ObjectReference,
_bytes: usize,
allocator: AllocationType
)