Trait Trace

Source
pub(crate) trait Trace {
    // Required method
    fn trace(&self, state: &mut GcState);
}
Expand description

A trait for owned types that can be traced by the garbage collector. This should be implemented by any type that will hold references to GC managed objects.

Required Methods§

Source

fn trace(&self, state: &mut GcState)

Implementations on Foreign Types§

Source§

impl Trace for f64

Source§

fn trace(&self, _: &mut GcState)

Source§

impl Trace for i64

Source§

fn trace(&self, _: &mut GcState)

Source§

impl Trace for u64

Source§

fn trace(&self, _: &mut GcState)

Source§

impl Trace for usize

Source§

fn trace(&self, _: &mut GcState)

Source§

impl<K: Trace, V: Trace> Trace for HashMap<K, V>

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace> Trace for Option<T>

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace> Trace for [T]

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace> Trace for VecDeque<T>

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace> Trace for Vec<T>

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace> Trace for RefCell<T>

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace> Trace for HashSet<T>

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace, U: Trace> Trace for (T, U)

Source§

fn trace(&self, state: &mut GcState)

Source§

impl<T: Trace, const N: usize> Trace for [T; N]

Source§

fn trace(&self, state: &mut GcState)

Implementors§

Source§

impl Trace for IntervalTree<'_>

Source§

impl Trace for Cons

Source§

impl Trace for ConsInner

Source§

impl Trace for LispBuffer

Source§

impl Trace for LispBufferInner

Source§

impl Trace for ObjCell

Source§

impl Trace for CharTable

Source§

impl Trace for LispFloat

Source§

impl Trace for ByteFn

Source§

impl Trace for ByteFnPrototype

Source§

impl Trace for HashTableCore<'_>

Source§

impl Trace for LispHashTable

Source§

impl Trace for LispBigInt

Source§

impl Trace for ByteString

Source§

impl Trace for LispString

Source§

impl Trace for SymbolCell

Source§

impl Trace for LispVec

Source§

impl Trace for LispVecInner

Source§

impl Trace for Record

Source§

impl<'a> Trace for ByteFrame<'a>

Source§

impl<'a> Trace for FrameStore<'a>

Source§

impl<'a> Trace for LispStack<'a>

Source§

impl<'a> Trace for Env<'a>

Source§

impl<'brw, 'env, 'rt> Trace for VM<'brw, 'env, 'rt>

Source§

impl<'ob> Trace for Handler<'ob>

Source§

impl<'ob> Trace for CharTableInner<'ob>

Source§

impl<K, V> Trace for ObjectMap<K, V>
where K: Trace + Hash + Eq, V: Trace,

Source§

impl<T> Trace for Slot<T>
where T: TracePtr + GcMoveable<Value = T>,

Source§

impl<T: Trace> Trace for GcHeap<T>