lua_gc/lib.rs
1//! Lua 5.4 garbage collector.
2//!
3//! Modules:
4//! heap — Phase-D production mark-sweep (Gc<T>, Trace, Heap)
5//!
6//! Historical Phase-A partial ports of C-Lua's `lgc.c`/`lmem.c` were removed
7//! once `heap.rs` became the production collector. Keep this crate's source
8//! tree limited to compiled modules so unsafe audits reflect the active build.
9
10pub mod heap;
11
12pub use heap::{
13 with_current_heap, Color, FinalizerEntry, FinalizerRegistry, FinalizerRegistryStats, Gc,
14 GcAge, GcBox, GcHeader, GcState, Heap, HeapGuard, HeapRef, Marker, StepBudget, StepOutcome,
15 Trace, WeakEntry, WeakListKind, WeakRegistry, WeakRegistrySnapshot, WeakRegistryStats,
16};
17
18// ──────────────────────────────────────────────────────────────────────────
19// PORT STATUS
20// source: (module aggregator; per-file ports own their own trailers)
21// target_crate: lua-gc
22// confidence: high
23// todos: 0
24// port_notes: 0
25// unsafe_blocks: 0
26// notes: Module aggregator: re-exports the public surface of heap.rs
27// (Gc, GcBox, GcHeader, Heap, HeapGuard, Marker, Trace, etc.).
28// No code of its own. The mark-and-sweep collector lives in
29// heap.rs. Reference-only Phase-A partial ports are not kept
30// in src/, so source scans track the active build.
31// ──────────────────────────────────────────────────────────────────────────