Module gc

Source

Modules§

collections 🔒
custom 🔒
macros 🔒
root 🔒
trace 🔒

Structs§

CustomAutoRooter
CustomAutoRooterGuard
An RAII guard used to root underlying data in CustomAutoRooter until the guard is dropped (falls out of scope). The underlying data can be accessed through this guard via its Deref and DerefMut implementations. This structure is created by root method on CustomAutoRooter or by the auto_root! macro.
Handle
MutableHandle
RootableVec
A vector of items to be rooted with RootedVec. Guaranteed to be empty when not rooted.
RootedGuard
Rust API for keeping a Rooted value in the context’s root stack. Example usage: rooted!(in(cx) let x = UndefinedValue());. RootedGuard::new also works, but the macro is preferred.
RootedTraceableBox
Roots any JSTraceable thing
RootedTraceableSet
Holds a set of JSTraceables that need to be rooted
RootedVec
A vector of items rooted for the lifetime ’a.
StackGCVector

Traits§

CustomTrace
Similarly to Traceable trait, it’s used to specify tracing of various types that are used in conjunction with CustomAutoRooter.
GCMethods
A trait for types which can place appropriate GC barriers.
Initialize
Trait that provides a GC-safe default value for the given type, if one exists.
RootKind
A trait for JS types that can be registered as roots.
Rootable
Marker trait that allows any type that implements the [trace::Traceable] trait to be used with the Rooted type.
Traceable
Types that can be traced.

Functions§

trace_traceables

Type Aliases§

HandleFunction
HandleId
HandleObject
HandleScript
HandleString
HandleSymbol
HandleValue
MutableHandleFunction
MutableHandleId
MutableHandleObject
MutableHandleScript
MutableHandleString
MutableHandleSymbol
MutableHandleValue
SequenceRooter
SequenceRooterGuard