Expand description
Shared Lace protocol, policy, codec, and runtime-support substrate.
This crate contains Lace’s protocol and policy machinery: records, Datalog,
exchange-plan lowering, interlace core state, ILTP codecs, and internal
runtime-support helpers. Source authoring belongs to lace-compiler.
Runtime crates own IO, tasks, timers, callbacks, and concrete store lifecycles.
Normal applications should usually enter through a runtime crate such as
lace-rt, lace-tokio, or a language binding such as @lace/lace-js.
Those crates expose Lace, LaceHandle, list, get, store, for_each,
and curated record/lifecycle events.
The modules in this crate are host-integration and protocol-building surfaces.
In particular, core contains sans-IO machines that emit store operation
requests and consume runtime-supplied store responses. runtime_support
contains narrow helper code for runtime-owned stores and transports; it is not
part of core and does not own runtime lifecycles. Runtime crates own
executable stores. Public record access in application code should go through
interlace-backed runtime operations rather than direct store mutation or
inspection.
Modules§
- core
- Runtime-neutral Lace interlace core.
- iltp
- ILTP byte codec and stream encodings.
- logic
- Pure Lace logic: Datalog lacegrams, exchange operands/plans, and local executable policy lowering.
- records
- Lace H3 record creation, validation, and metadata views.
Macros§
- record
- Build and validate a record from a
RecordSpecliteral. - spec
- Build a
RecordSpecfrom Rust literal syntax.