Expand description
Traits to implement functionality according to https://github.com/xmtp/XIPs/blob/main/XIPs/xip-49-decentralized-backend.md#33-client-to-node-protocol
Structs§
- NoCursor
Store - This cursor store always returns 0
- Noop
Resolver - A resolver that does not even attempt to try and get dependencies
- Resolved
- Typed
Noop Resolver - Xmtp
Envelope - Envelopes from the XMTP Network received from a general
XmtpQuery
Enums§
Traits§
- Apply
Cursor - Extension trait to modify a
TopicCursorwith the contents of an envelope. - Cursor
Store - Trait defining how cursors should be stored, updated, and fetched NOTE:, implementations decide retry strategy. the exact implementation of persistence (or lack) is up to implementors. functions are assumed to be idempotent & atomic.
- Envelope
- Represents a Single High-Level Envelope
An
Envelopeis aProtocolEnvelopewith someExtractorapplied to it. Envelopes received from the network generally must adhere to the form of envelopes expected in d14n Node2Node Protocol. In the network, Node operators are responseible for maintaining aCursorper envelope. Likewise, Clients form theClientEnvelopeaccording to the Client Node2Node Protocol Client envelopes maintain a payload/topic with MLS and Client-specific duties. - Envelope
Collection - A Generic Higher-Level Collection of Envelopes
- Envelope
Visitor - Envelope Visitor type for handling of serialized nested envelope types.
- Extractor
- An Extractor indicates a specific direction to
process an [
ProtocolEnvelope]. Extractor implementations are available incrate::protocol::extractors - Full
Xmtp ApiT - Trait combining all other api traits into one
Used for describing the entire XmtpApi from
the client perspective in a single
dyn Traitor otherwise requiring the full capabilities of the API. Requiring the full capabilities outside of a dyn should generally be avoided unless the consumer wants to be unnecessarily general/restrictive. - Maybe
Extractor - Ordered
Envelope Collection - A ordered envelope collection
an
OrderedEnvelopeCollectiondiffers fromSortsince it adds the including ofasync, allowing anOrderedEnvelopeCollectionto both Sort and ResolveDependencies - Protocol
Envelope - An low-level envelope from the network gRPC interface
- Resolve
Dependencies - Sort
- Envelopes in a d14n-context must be sorted according to its dependencies, and by-originator. XIP, cross-originator sorting
- TryEnvelope
Collection Ext - Extension trait for an envelope collection which handles errors.
- TryExtractor
- Represents an
Extractorwhose output is aResultUseful for deriving traits that should be aware of Result Ok and Error values. - Xmtp
Query - matching the cursor criteria given.
Type Aliases§
- Full
Xmtp ApiArc - A type-erased version of the Xntp Api in a
Arc - Full
Xmtp ApiBox - A type-erased version of the Xmtp Api in a
Box