Skip to main content

liminal_protocol/wire/
mod.rs

1//! Participant message discriminants, schemas, and deterministic wire codec.
2
3mod authority;
4mod closure;
5mod codec;
6mod envelope;
7mod primitives;
8mod push;
9mod request;
10mod response;
11mod sequence_budget;
12mod server_codec;
13mod tags;
14
15#[cfg(test)]
16mod authority_tests;
17#[cfg(test)]
18mod codec_tests;
19#[cfg(test)]
20mod server_codec_tests;
21#[cfg(test)]
22mod tags_tests;
23
24pub use authority::{
25    CredentialAttachResponse, DetachResponse, EnrollmentResponse, LeaveResponse, MarkerAckResponse,
26    ObserverRecoveryResponse, ParticipantAckResponse, RecordAdmissionResponse,
27};
28pub use closure::{
29    ClosureCapacityReason, ClosureCheckedEnvelope, ClosureRefusalReason, ClosureSnapshot,
30    MarkerClosureCapacityExceeded, ParticipantCursorProgressEdge, RepaymentEdge,
31};
32pub use codec::{
33    AuthenticationState, CodecError, FRAME_MAX, GENERIC_HEADER_LEN, InboundGateContext,
34    InboundGateError, MIN_PARTICIPANT_FRAME_MAX, NegotiatedParticipantCapability,
35    PARTICIPANT_FRAME_OVERHEAD, PARTICIPANT_FRAME_TYPE, PARTICIPANT_PREFIX_LEN,
36    PRECAP_PARTICIPANT_FRAME_MAX, ParticipantCapabilityState, ParticipantFrame, ReceiverDirection,
37    ValidatedFrameLimit, complete_frame_bytes, decode, encode, encoded_len, gate_inbound,
38};
39pub use envelope::{
40    AttachEnvelope, DetachEnvelope, EnrollmentEnvelope, LeaveEnvelope, MarkerAckEnvelope,
41    ParticipantAckEnvelope, RecordAdmissionEnvelope, ResponseEnvelope,
42};
43pub use primitives::{
44    AttachAttemptToken, AttachSecret, BindingEpoch, ConnectionIncarnation, ConversationId,
45    DeliverySeq, DetachAttemptToken, EnrollmentToken, Generation, LeaveAttemptToken, ObserverEpoch,
46    ParticipantId, ParticipantIndex, ProtocolVersion, RecordAdmissionAttemptToken,
47    TransactionOrder,
48};
49pub use push::{DetachedCause, DiedCause, ParticipantDelivery, ParticipantRecord, ServerPush};
50pub use request::{
51    ClientRequest, CredentialAttachRequest, DetachRequest, EnrollmentRequest, LeaveRequest,
52    MarkerAck, ObserverRecoveryHandshake, ObserverRefusal, ParticipantAck, RecordAdmission,
53};
54pub use response::*;
55pub use sequence_budget::SequenceBudget;
56pub use server_codec::{decode_server_value_body, encode_server_value_body};
57pub use tags::{
58    AckGapReason, AckRegressionReason, AttemptConflict, AttemptOperation, AuthorityStateTag,
59    BindingStateTag, ClientDiscriminant, CloseCause, CloseCauseTag, ClosureScope, Counter,
60    DecodeClass, IdentityCapacityScope, InvalidObserverEpochListReason, InvalidObserverEpochReason,
61    MarkerMismatchReason, MarkerNotDeliveredReason, PushDiscriminant, ReceiptCapacityScope,
62    ReceiptExpiryReason, RecordKind, RepaymentEdgeTag, ServerDiscriminant, TagError,
63    TransportReasonTag,
64};