pub struct SourceReplayContract {
pub stability: SourceReplayStability,
pub generation: u64,
pub value_form: SourceValueForm,
}Expand description
Runtime source capability used by offset-stamped batch plans.
generation must change whenever rendering the same ordinal may produce a
different value. Activation identity remains executor-owned because a
phase rewind can intentionally replay one unchanged source generation as a
new logical evaluation.
Fields§
§stability: SourceReplayStabilityWhether rendering an ordinal again gives the same value.
generation: u64The generation of the source’s values; changes when an ordinal may render differently.
value_form: SourceValueFormWhat a value is: an ordinal, or opaque.
Implementations§
Source§impl SourceReplayContract
impl SourceReplayContract
Sourcepub const fn consumptive() -> Self
pub const fn consumptive() -> Self
The contract of a source that is consumed as it advances: no replay.
Sourcepub const fn stable_ordinal(generation: u64) -> Self
pub const fn stable_ordinal(generation: u64) -> Self
The contract of a source stable by ordinal in generation.
Sourcepub const fn is_stable_by_ordinal(self) -> bool
pub const fn is_stable_by_ordinal(self) -> bool
Whether any owned ordinal renders again without advancing the source.
Sourcepub const fn is_perfect_ordinal(self) -> bool
pub const fn is_perfect_ordinal(self) -> bool
True when the source ordinal is simultaneously a replay key, scalar value, packet number, and low-order lane clock.
Trait Implementations§
Source§impl Clone for SourceReplayContract
impl Clone for SourceReplayContract
Source§fn clone(&self) -> SourceReplayContract
fn clone(&self) -> SourceReplayContract
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for SourceReplayContract
Source§impl Debug for SourceReplayContract
impl Debug for SourceReplayContract
Source§impl Default for SourceReplayContract
impl Default for SourceReplayContract
Source§fn default() -> SourceReplayContract
fn default() -> SourceReplayContract
impl Eq for SourceReplayContract
Source§impl PartialEq for SourceReplayContract
impl PartialEq for SourceReplayContract
impl StructuralPartialEq for SourceReplayContract
Auto Trait Implementations§
impl Freeze for SourceReplayContract
impl RefUnwindSafe for SourceReplayContract
impl Send for SourceReplayContract
impl Sync for SourceReplayContract
impl Unpin for SourceReplayContract
impl UnsafeUnpin for SourceReplayContract
impl UnwindSafe for SourceReplayContract
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
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more