pub struct ParticipantAckCommit { /* private fields */ }Expand description
Atomic zero-debt participant-ack commit.
The cursor update is intentionally opaque. Only Self::apply_to can
validate and apply it to a LiveMember, while Self::outcome exposes
the crate-owned wire success for persistence and response encoding.
Implementations§
Source§impl ParticipantAckCommit
impl ParticipantAckCommit
Sourcepub const fn outcome(&self) -> &AckCommitted
pub const fn outcome(&self) -> &AckCommitted
Borrows the exact committed wire outcome.
Sourcepub const fn observer_progress_projection(&self) -> ObserverProgressProjection
pub const fn observer_progress_projection(&self) -> ObserverProgressProjection
Projects the exact committed ack boundary into hard observer progress.
Sourcepub fn apply_to<F>(
self,
member: &mut LiveMember<F>,
) -> Result<AckCommitted, ParticipantAckCommitError>
pub fn apply_to<F>( self, member: &mut LiveMember<F>, ) -> Result<AckCommitted, ParticipantAckCommitError>
Applies this commit to either its exact old cursor or its already-written resulting cursor.
Replaying after a crash is idempotent: the old prestate advances once,
while the exact new prestate returns the same AckCommitted without a
second mutation.
§Errors
Returns ParticipantAckCommitError if the supplied member differs in
conversation, participant, generation, or cursor prestate.
Trait Implementations§
Source§impl Clone for ParticipantAckCommit
impl Clone for ParticipantAckCommit
Source§fn clone(&self) -> ParticipantAckCommit
fn clone(&self) -> ParticipantAckCommit
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ParticipantAckCommit
impl Debug for ParticipantAckCommit
impl Eq for ParticipantAckCommit
Source§impl PartialEq for ParticipantAckCommit
impl PartialEq for ParticipantAckCommit
impl StructuralPartialEq for ParticipantAckCommit
Auto Trait Implementations§
impl Freeze for ParticipantAckCommit
impl RefUnwindSafe for ParticipantAckCommit
impl Send for ParticipantAckCommit
impl Sync for ParticipantAckCommit
impl Unpin for ParticipantAckCommit
impl UnsafeUnpin for ParticipantAckCommit
impl UnwindSafe for ParticipantAckCommit
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