1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
//! Utility layer for choreographic protocol execution.
//!
//! This module provides small platform-facing helpers used by higher-level
//! effect, transport, and topology code:
//!
//! - Cross-platform async spawning utilities
//! - System clock and RNG adapters
//! - Platform-specific synchronization primitives
//!
//! # Architecture
//!
//! The utility layer provides the infrastructure needed to execute generated
//! protocol code on native and WASM targets. Execution itself is modeled
//! through the effect system in [`crate::effects`]; this module is only the
//! platform support layer.
//!
//! ```text
//! ┌─────────────────────────────────────────────────────────────┐
//! │ Generated Code │
//! │ Effect Programs + ChoreoHandler │
//! └─────────────────────────────────────────────────────────────┘
//! │
//! ▼
//! ┌─────────────────────────────────────────────────────────────┐
//! │ Utility Layer │
//! │ spawn(), spawn_local(), clocks │
//! └─────────────────────────────────────────────────────────────┘
//! │
//! ▼
//! ┌─────────────────────────────────────────────────────────────┐
//! │ Transport Implementation │
//! │ Handlers / Transport Layers │
//! └─────────────────────────────────────────────────────────────┘
//! ```
// Re-export the main utility helpers at the module boundary.
pub use ;
pub use ;