axiolid_field/
lib.rs

1#![forbid(unsafe_code)]
2//! Frame-neutral, deterministic layered spatial-field values.
3//!
4//! A field stores row-major `(x, y)` cells in an explicit frame. Surface
5//! crossings and positive-length occupancy spans remain distinct channels so a
6//! zero-thickness facet cannot masquerade as filled space. This package owns
7//! values, validation, and caller-supplied configuration only; sampling,
8//! morphology, clearance, and navigation live in `axiolid-field-ops`.
9
10mod cell;
11mod config;
12mod error;
13mod field;
14
15pub use cell::{LayeredCell, SurfaceFacing, SurfaceHit};
16pub use config::{FieldBounds, FieldConfig, FieldResourceBudget};
17pub use error::LayeredFieldError;
18pub use field::{FieldEvidence, LayeredField};