pub struct Event(/* private fields */);Expand description
Opaque typed completion event.
Constructors validate each event’s local scalar shape. Edge transitions then
consume the event and match its participant, binding, marker, range, and
boundary against the exact stored predecessor. The private kind set is the
frozen eight-kind register: marker and normal acknowledgements share
CursorProgressed, while live and detached alternatives share
LeaveCommitted; the convenience constructors do not invent occurrences.
Implementations§
Source§impl Event
impl Event
Sourcepub const fn projection_completed(through_seq: DeliverySeq) -> Self
pub const fn projection_completed(through_seq: DeliverySeq) -> Self
Records observer projection through an exact sequence.
Sourcepub const fn compaction_completed(
from_floor: DeliverySeq,
through_seq: DeliverySeq,
resulting_floor: DeliverySeq,
) -> Option<Self>
pub const fn compaction_completed( from_floor: DeliverySeq, through_seq: DeliverySeq, resulting_floor: DeliverySeq, ) -> Option<Self>
Records exact physical compaction and its resulting floor.
Sourcepub const fn marker_appended(
marker_delivery_seq: DeliverySeq,
resulting_projection_through: DeliverySeq,
) -> Self
pub const fn marker_appended( marker_delivery_seq: DeliverySeq, resulting_projection_through: DeliverySeq, ) -> Self
Records a preclaimed marker append that extends an OP suffix.
Sourcepub const fn marker_delivered(
participant_id: ParticipantId,
binding_epoch: BindingEpoch,
marker_delivery_seq: DeliverySeq,
) -> Self
pub const fn marker_delivered( participant_id: ParticipantId, binding_epoch: BindingEpoch, marker_delivery_seq: DeliverySeq, ) -> Self
Records final-emitter delivery of an exact marker to an exact epoch.
Sourcepub const fn cursor_progressed(
participant_id: ParticipantId,
binding_epoch: BindingEpoch,
previous_cursor: DeliverySeq,
through_seq: DeliverySeq,
resulting_floor: DeliverySeq,
) -> Option<Self>
pub const fn cursor_progressed( participant_id: ParticipantId, binding_epoch: BindingEpoch, previous_cursor: DeliverySeq, through_seq: DeliverySeq, resulting_floor: DeliverySeq, ) -> Option<Self>
Records a strictly advancing cumulative normal ack.
V1’s permanent participant id is the participant index, so the stored
occurrence key is derived from participant_id rather than accepted as
an independently forgeable value.
Sourcepub const fn marker_acknowledged(
participant_id: ParticipantId,
binding_epoch: BindingEpoch,
marker_delivery_seq: DeliverySeq,
resulting_floor: DeliverySeq,
) -> Self
pub const fn marker_acknowledged( participant_id: ParticipantId, binding_epoch: BindingEpoch, marker_delivery_seq: DeliverySeq, resulting_floor: DeliverySeq, ) -> Self
Records acceptance of one exact delivered marker, deriving its participant-index occurrence key from the permanent participant id.
Sourcepub const fn binding_fate_observed(
participant_id: ParticipantId,
binding_epoch: BindingEpoch,
resulting_floor: DeliverySeq,
) -> Self
pub const fn binding_fate_observed( participant_id: ParticipantId, binding_epoch: BindingEpoch, resulting_floor: DeliverySeq, ) -> Self
Records exact binding fate and its measured floor effect.
Sourcepub const fn live_leave_committed(
participant_id: ParticipantId,
binding_epoch: BindingEpoch,
resulting_floor: DeliverySeq,
) -> Self
pub const fn live_leave_committed( participant_id: ParticipantId, binding_epoch: BindingEpoch, resulting_floor: DeliverySeq, ) -> Self
Records a live-bound Leave and its measured floor effect.
Sourcepub const fn detached_leave_committed(
participant_id: ParticipantId,
resulting_floor: DeliverySeq,
) -> Self
pub const fn detached_leave_committed( participant_id: ParticipantId, resulting_floor: DeliverySeq, ) -> Self
Records a detached Leave and its measured floor effect.
Sourcepub const fn fenced_recovery_committed(
participant_id: ParticipantId,
marker_delivery_seq: DeliverySeq,
prior_binding_epoch: BindingEpoch,
new_binding_epoch: BindingEpoch,
resulting_floor: DeliverySeq,
) -> Self
pub const fn fenced_recovery_committed( participant_id: ParticipantId, marker_delivery_seq: DeliverySeq, prior_binding_epoch: BindingEpoch, new_binding_epoch: BindingEpoch, resulting_floor: DeliverySeq, ) -> Self
Records exact fenced recovery into a new binding epoch.