Skip to main content

murk_core/
lib.rs

1//! Core types and traits for the Murk simulation framework.
2//!
3//! This is the leaf crate with zero internal Murk dependencies. It defines
4//! the fundamental abstractions used throughout the Murk workspace:
5//! type IDs, field descriptors, error types, and core traits.
6
7#![deny(missing_docs)]
8#![deny(rustdoc::broken_intra_doc_links)]
9#![forbid(unsafe_code)]
10
11pub mod command;
12pub mod error;
13pub mod field;
14pub mod id;
15pub mod traits;
16
17// Re-export core types at crate root for convenience.
18pub use command::{Command, CommandPayload, Receipt};
19pub use error::{IngressError, ObsError, PropagatorError, StepError};
20pub use field::{BoundaryBehavior, FieldDef, FieldMutability, FieldSet, FieldSetIter, FieldType};
21pub use id::{
22    Coord, FieldId, ParameterKey, ParameterVersion, SpaceId, SpaceInstanceId, TickId,
23    WorldGenerationId,
24};
25pub use traits::{FieldReader, FieldWriter, SnapshotAccess};