Crates.io | ocaml-boxroot-sys |
lib.rs | ocaml-boxroot-sys |
version | 0.3.1 |
source | src |
created_at | 2021-03-11 14:26:52.470889 |
updated_at | 2024-03-12 14:01:05.291259 |
description | Boxroot for OCaml: fast movable GC roots (C API) |
homepage | https://gitlab.com/ocaml-rust/ocaml-boxroot |
repository | https://gitlab.com/ocaml-rust/ocaml-boxroot |
max_upload_size | |
id | 367311 |
size | 89,780 |
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
crate ocaml-interop
).
The link-ocaml-runtime-and-dummy-program
feature needs to be enabled when running tests:
cargo test --features "link-ocaml-runtime-and-dummy-program"
bundle-boxroot
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.