//! `squib-host` — macOS host-side primitives that back the snapshot subsystem.
//!
//! Phase 5.5 lands the Mach-exception-port pager that powers `--mem-backend=Uffd`
//! and `--mem-backend=File` postcopy restore (per
//! [16-snapshots.md § 5](../../../specs/16-snapshots.md#5-postcopy--lazy-restore)).
//! The crate is host-specific: on macOS it wires raw Mach syscalls; elsewhere it
//! exposes the same trait surface with stub backends so the snapshot crate's tests
//! still build cross-platform.
//!
//! The crate is the `unsafe` boundary alongside `squib-hv` and `squib-net::sys`.
// Hardware names (Mach, IPC, mig, EXC_*) and hyphenated nouns are common in the
// docs; backticking each adds noise.
// Boundary modules call into raw FFI; the unsafe-op-in-unsafe-fn lint is what
// enforces the SAFETY: blocks per CLAUDE.md.
// Sync I/O in tests is fine; the production pager runs on a dedicated `std::thread`
// and synchronously serves Mach exceptions. The project's `disallowed_methods` lint
// targets runtime tokio code (per `crates/vmm/src/lib.rs`).
// `as usize` for the host page size is safe — Apple Silicon is 64-bit. The static
// guarantee lives in `host_page_size`; truncation is impossible.
pub use set_f_nocache;
pub use ;