Immutable State Manager (src/state.rs)

berimor · crates/berimor-process-engine/src/state.rs · rust · Apache-2.0
database, fw:serde, tag:immutable, tag:state, tag:patch, tag:atomic

Applies patches atomically to state, ensuring state transitions are consistent.

// Source: https://github.com/devpilgrin/berimor | License: Apache-2.0 | Copyright You must retain, in the Source form of any Derivative Works
// Provided via justclaw.it.com; keep this notice with the code.
//! Иммутабельное состояние: атомарное применение патча, свёртка журнала.
//!
//! Источник: `docs/arch/process-engine.md` §3 («Состояние»), §7 (свойство
//! «свёртка журнала событий равна живому состоянию»). ROADMAP: F2.
//!
//! Обе функции чистые и непроверяющие: они не валидируют содержимое
//! `changes` — к моменту, когда патч сюда попадает, он уже прошёл
//! Mediation (`mediation.md` §1: «ни один шаг с моделью не пишет в
//! состояние напрямую»). Атомарность здесь — про целостность перехода
//! состояния (нет промежуточных полу-применённых значений), не про
//! проверку смысла.

us

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key