4 releases (2 breaking)
|0.3.0||Feb 9, 2023|
|0.3.0-rc.1||Feb 3, 2023|
|0.2.0||Mar 18, 2021|
|0.1.0||Mar 11, 2021|
#193 in Memory management
10,180 downloads per month
Used in 4 crates (2 directly)
Boxroot for OCaml: fast movable GC roots
This library extends the OCaml foreign function interface with an efficient and flexible GC rooting mechanism. See https://gitlab.com/ocaml-rust/ocaml-boxroot/.
This crate exposes the raw functionality of the Boxroot library as
unsafe Rust functions. It is meant to be used by low-level libraries
to expose GC roots for the OCaml GC as smart pointers in Rust (see the
link-ocaml-runtime-and-dummy-program feature needs to be enabled when running tests:
cargo test --features "link-ocaml-runtime-and-dummy-program"
If this feature flag is not enabled (by default it is enabled), the compilation of the C code that implements boxroot will be skipped, and the user is responsible of linking boxroot into the final binary.
When this feature flag is enabled, the OCaml headers must be available to be able to compile the boxroot C code.