gc_arena/
lib.rs

1#![no_std]
2#![cfg_attr(miri, feature(strict_provenance))]
3
4#[cfg(feature = "std")]
5extern crate std;
6
7extern crate alloc;
8
9pub mod arena;
10pub mod barrier;
11mod collect;
12mod collect_impl;
13mod context;
14mod dynamic_roots;
15mod gc;
16mod gc_weak;
17pub mod lock;
18pub mod metrics;
19mod no_drop;
20mod static_collect;
21mod types;
22mod unsize;
23
24#[cfg(feature = "allocator-api2")]
25pub mod allocator_api;
26
27#[cfg(feature = "hashbrown")]
28mod hashbrown;
29
30#[doc(hidden)]
31pub use gc_arena_derive::*;
32
33#[doc(hidden)]
34pub use self::{arena::__DynRootable, no_drop::__MustNotImplDrop, unsize::__CoercePtrInternal};
35
36pub use self::{
37    arena::{rootless_arena, Arena, CollectionPhase, Root, Rootable},
38    collect::Collect,
39    context::{Collection, Finalization, Mutation},
40    dynamic_roots::{DynamicRoot, DynamicRootSet, MismatchedRootSet},
41    gc::Gc,
42    gc_weak::GcWeak,
43    static_collect::StaticCollect,
44};