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
43
44
45
46
47
//! Persistence contracts and in-memory event stores for Aion durable workflows.
//!
//! The crate defines the async event-store traits used by the engine, visibility
//! records for workflow listings, timer records, run-chain summaries, and a
//! correct `InMemoryStore` reference implementation for tests and development.
//!
//! # Example
//!
//! ```
//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
//! use aion_store::{InMemoryStore, ReadableEventStore, WorkflowId};
//!
//! let store = InMemoryStore::default();
//! let workflow_id = WorkflowId::new_v4();
//! let history = store.read_history(&workflow_id).await?;
//! assert!(history.is_empty());
//! # Ok(())
//! # }
//! ```
/// Backend conformance helpers shared by event-store implementations.
/// Store-level error taxonomy.
/// In-memory reference implementation of the store contracts.
/// Run-chain summaries used for workflow execution lineage.
/// Core readable and writable event-store traits.
/// Timer persistence records and queries.
/// Workflow visibility records, predicates, and list filters.
pub use ;
pub use StoreError;
pub use InMemoryStore;
pub use ;
pub use TimerEntry;
pub use ;