boa_gc crate implements a garbage collector.
Try out the most recent release with Boa’s live demo playground.
boa_ast- Boa’s ECMAScript Abstract Syntax Tree.
boa_engine- Boa’s implementation of ECMAScript builtin objects and execution.
boa_gc- Boa’s garbage collector.
boa_interner- Boa’s string interner.
boa_parser- Boa’s lexer and parser.
boa_profiler- Boa’s code profiler.
boa_icu_provider- Boa’s ICU4X data provider.
boa_runtime- Boa’s WebAPI features.
pub use crate::trace::Tracer;
- cell 🔒A garbage collected cell implementation
- pointers 🔒Pointers represents the External types returned by the Boa Garbage Collector
- trace 🔒
- Utility macro to manually implement
Traceon a type.
- Utility macro to define an empty implementation of
- The Allocator handles allocation of garbage collected values.
- BoaGc 🔒
- This collector currently functions in four main phases
DropGuardflags whether the Collector is currently running
- A key-value pair where the value becomes unaccesible when the key is garbage collected.
- A garbage-collected pointer type over an immutable value.
- A garbage collected allocation.
- GcConfig 🔒
- A wrapper type for an immutably borrowed value from a
- A mutable memory location with dynamically checked borrow rules that can be used inside of a garbage-collected pointer.
- A wrapper type for a mutably borrowed value from a
- A weak reference to a
- A map that holds weak references to its keys and is traced by the garbage collector.
- BOA_GC 🔒
- Substitute for the
Droptrait for garbage collected types.
- The Trace trait, which needs to be implemented on garbage-collected objects.
trueif it is safe for a type to run
- Forcefully runs a garbage collection of all unaccessible nodes.
- Derive the
- Derive the