retrace/wire
Versioned, application-neutral delivery envelopes. Payloads are application-encoded strings. This module checks transport and sequence invariants; it does not interpret the application’s model.
Types
pub type Batch {
Batch(
session: Session,
checkpoint: retrace.Checkpoint(String),
entries: List(retrace.Entry(Event)),
)
}
Constructors
-
Batch( session: Session, checkpoint: retrace.Checkpoint(String), entries: List(retrace.Entry(Event)), )
pub type Error {
MalformedEnvelope
InvalidSession
EmptyBatch
TooManyEntries
TooLarge
InvalidHistory(retrace.Error(Nil))
}
Constructors
-
MalformedEnvelope -
InvalidSession -
EmptyBatch -
TooManyEntries -
TooLarge -
InvalidHistory(retrace.Error(Nil))
pub type Event {
Event(kind: String, payload: String)
}
Constructors
-
Event(kind: String, payload: String)
Values
pub fn end_sequence(batch: Batch) -> Int
pub const max_entries: Int
pub fn origin(session: Session) -> retrace.Origin
pub fn session_decoder() -> decode.Decoder(Session)