#[non_exhaustive]pub struct ExecutionConfig {
pub default_timeout: Duration,
pub max_commands_per_turn: usize,
pub fail_closed_on_policy_store_error: bool,
pub allow_cross_case_partial_success: bool,
pub group_mutations_per_case: bool,
}Expand description
How commands are executed (Appendix A, spec §13.4, §16).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.default_timeout: DurationTime budget for one command batch.
max_commands_per_turn: usizeCap on the commands one turn may compile. Exceeding it refuses the turn rather than executing a prefix.
fail_closed_on_policy_store_error: boolMust stay true: an unavailable policy source stops the turn (I19).
allow_cross_case_partial_success: boolWhether one case may commit while another fails in the same turn.
group_mutations_per_case: boolWhether mutations on one case default to committing together
(AtomicityScope::PerCase).
Implementations§
Source§impl ExecutionConfig
impl ExecutionConfig
Sourcepub const fn conservative() -> Self
pub const fn conservative() -> Self
30 seconds, 32 commands, fail closed, no cross-case partial success, per-case grouping.
Sourcepub const fn with_max_commands_per_turn(self, max: usize) -> Self
pub const fn with_max_commands_per_turn(self, max: usize) -> Self
Returns a copy with another command budget.
Sourcepub const fn with_default_timeout(self, timeout: Duration) -> Self
pub const fn with_default_timeout(self, timeout: Duration) -> Self
Returns a copy with another batch timeout.
Trait Implementations§
Source§impl Clone for ExecutionConfig
impl Clone for ExecutionConfig
impl Copy for ExecutionConfig
Source§impl Debug for ExecutionConfig
impl Debug for ExecutionConfig
Source§impl Default for ExecutionConfig
impl Default for ExecutionConfig
Source§impl<'de> Deserialize<'de> for ExecutionConfig
impl<'de> Deserialize<'de> for ExecutionConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ExecutionConfig
Source§impl PartialEq for ExecutionConfig
impl PartialEq for ExecutionConfig
Source§impl Serialize for ExecutionConfig
impl Serialize for ExecutionConfig
impl StructuralPartialEq for ExecutionConfig
Auto Trait Implementations§
impl Freeze for ExecutionConfig
impl RefUnwindSafe for ExecutionConfig
impl Send for ExecutionConfig
impl Sync for ExecutionConfig
impl Unpin for ExecutionConfig
impl UnsafeUnpin for ExecutionConfig
impl UnwindSafe for ExecutionConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.