mojo-rs-c-api 0.2.0

Export of the compatible public Mojo C System ABI (epoch 1), built on mojo-rs-core. No panic may cross the ABI boundary.
Documentation

mojo-rs-c-api

Export of the compatible public Mojo C System ABI (epoch 1).

Status: Scaffolded (structure only; no behavior yet).

Requirements (Phase 6)

  • Exact symbol names, calling conventions, integer widths, struct sizes, alignments, enum/flag values.
  • Correct option-structure version behavior (old sizes accepted).
  • Correct null-pointer handling.
  • No panic may cross the ABI boundary — all panics contained and converted to safe failure behavior.
  • Ownership transitions exactly match the C contract.
  • ABI courts compare exported symbol sets, header compilation, constants, struct sizes, field offsets, alignments, and unchanged C/C++ clients.

Structure

  • types.rs — mirror of the pinned C types (ground truth: atlas/reference).
  • symbols.rs#[no_mangle] extern "C" exports.
  • containment.rs — panic containment (catch_unwind at the boundary).
  • versioning.rs — option-struct version handling.