Expand description
Typed compare-and-swap executor for synchronous and asynchronous workflows.
CasExecutor<T, E> binds the shared state type T and operation error type
E. Each execution call introduces its own business output type R, so one
executor configuration can serve multiple CAS operations over the same state.
Re-exports§
pub use error::CasAttemptFailure;pub use error::CasAttemptFailureKind;pub use error::CasError;pub use error::CasErrorKind;pub use event::CasContext;pub use event::CasEvent;pub use event::CasHooks;pub use executor::CasBuilder;pub use executor::CasExecutor;pub use observability::CasAlert;pub use observability::CasObservabilityConfig;pub use observability::CasObservabilityMode;pub use observability::ContentionThresholds;pub use observability::ListenerPanicPolicy;pub use options::CasTimeoutPolicy;pub use report::CasExecutionOutcome;pub use report::CasExecutionReport;pub use strategy::CasStrategy;pub use strategy::CasStrategyProfile;
Modules§
- constants
- Built-in CAS preset constants.
- error
- CAS error types.
- event
- CAS event context and hook types.
- executor
- CAS executor and builder modules and re-exports.
- observability
- Observability configuration for CAS execution.
- options
- CAS option types.
- report
- Execution reports produced by CAS flows.
- strategy
- CAS retry strategy presets.
Structs§
- CasOutcome
- Public return value for one CAS execution.
Enums§
- CasDecision
- Decision returned by one CAS operation attempt.
- CasSuccess
- Successful result returned by
crate::CasExecutor.