Trait gc::Trace
[−]
[src]
pub unsafe trait Trace: Finalize { unsafe fn trace(&self); unsafe fn root(&self); unsafe fn unroot(&self); fn finalize_glue(&self); }
The Trace trait, which needs to be implemented on garbage-collected objects.
Required Methods
unsafe fn trace(&self)
Marks all contained Gc
s.
unsafe fn root(&self)
Increments the root-count of all contained Gc
s.
unsafe fn unroot(&self)
Decrements the root-count of all contained Gc
s.
fn finalize_glue(&self)
Runs Finalize::finalize() on this object and all contained subobjects
Implementors
impl<T: ?Sized> Trace for &'static T
impl Trace for usize
impl Trace for bool
impl Trace for i8
impl Trace for u8
impl Trace for i16
impl Trace for u16
impl Trace for i32
impl Trace for u32
impl Trace for i64
impl Trace for u64
impl Trace for f32
impl Trace for f64
impl Trace for String
impl<T: Trace> Trace for Box<T>
impl<T: Trace> Trace for Vec<T>
impl<T: Trace> Trace for Option<T>
impl<T: Trace + ?Sized> Trace for Gc<T>
impl<T: Trace + ?Sized> Trace for GcCell<T>