pub trait Trace<'js> {
// Required method
fn trace<'a>(&self, tracer: Tracer<'a, 'js>);
}
Expand description
A trait for classes for tracing references to QuickJS objects.
QuickJS uses reference counting with tracing to break cycles. As a result implementing this trait incorrectly by not tracing an object cannot result in unsound code. It will however result in memory leaks as the GC will be unable to break cycles which in turn result in cyclic references being kept alive forever.
Required Methods§
Implementations on Foreign Types§
Source§impl<'js, A, B, C, D> Trace<'js> for (A, B, C, D)
impl<'js, A, B, C, D> Trace<'js> for (A, B, C, D)
Source§impl<'js, A, B, C, D, E> Trace<'js> for (A, B, C, D, E)
impl<'js, A, B, C, D, E> Trace<'js> for (A, B, C, D, E)
Source§impl<'js, A, B, C, D, E, F> Trace<'js> for (A, B, C, D, E, F)
impl<'js, A, B, C, D, E, F> Trace<'js> for (A, B, C, D, E, F)
Source§impl<'js, A, B, C, D, E, F, G> Trace<'js> for (A, B, C, D, E, F, G)
impl<'js, A, B, C, D, E, F, G> Trace<'js> for (A, B, C, D, E, F, G)
Source§impl<'js, A, B, C, D, E, F, G, H> Trace<'js> for (A, B, C, D, E, F, G, H)
impl<'js, A, B, C, D, E, F, G, H> Trace<'js> for (A, B, C, D, E, F, G, H)
Source§impl<'js, A, B, C, D, E, F, G, H, I> Trace<'js> for (A, B, C, D, E, F, G, H, I)
impl<'js, A, B, C, D, E, F, G, H, I> Trace<'js> for (A, B, C, D, E, F, G, H, I)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J> Trace<'js> for (A, B, C, D, E, F, G, H, I, J)
impl<'js, A, B, C, D, E, F, G, H, I, J> Trace<'js> for (A, B, C, D, E, F, G, H, I, J)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J, K> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K)
impl<'js, A, B, C, D, E, F, G, H, I, J, K> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J, K, L> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L)
impl<'js, A, B, C, D, E, F, G, H, I, J, K, L> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M)
impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)
impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)
impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)
Source§impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)
impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> Trace<'js> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)
Source§impl<'js, T> Trace<'js> for LinkedList<T>where
T: Trace<'js>,
impl<'js, T> Trace<'js> for LinkedList<T>where
T: Trace<'js>,
Source§impl<'js, T, S> Trace<'js> for IndexSet<T, S>where
T: Trace<'js>,
Available on crate feature indexmap
only.
impl<'js, T, S> Trace<'js> for IndexSet<T, S>where
T: Trace<'js>,
Available on crate feature
indexmap
only.