Skip to main contentCrate roam_types
Source - selfref_match
- Pattern-match on a field of a
SelfRef<T>, projecting to SelfRef<VariantInner>
in each arm body.
- ArgDescriptor
- Descriptor for a single RPC method argument.
- ChannelClose
- ChannelCore
- Shared state between a
Tx/Rx pair created by channel(). - ChannelGrantCredit
- ChannelId
- ID of a channel between two peers.
- ChannelItem
- ChannelLocation
- A precomputed location of a channel within a type structure.
- ChannelMessage
- ChannelReset
- ConnectionAccept
- ConnectionClose
- ConnectionId
- Connection ID identifying a virtual connection on a link.
- ConnectionOpen
- ConnectionReject
- ConnectionSettings
- Per-connection limits advertised by a peer.
- CreditSink
- A
ChannelSink wrapper that enforces credit-based flow control. - EnumInfo
- Information about an enum type.
- ErasedCaller
- Type-erased
Caller wrapper used by generated clients. - Hello
- HelloYourself
- IdAllocator
- Allocates IDs with a given parity (odd or even), stepping by 2.
- Message
- Protocol message.
- MessageFamily
- Type-level tag for
Message as a MsgFamily. - MetadataEntry
- A single metadata entry with a key, value, and flags.
- MetadataFlags
- Metadata entry flags.
- MethodDescriptor
- Static descriptor for a single RPC method.
- MethodId
- A unique method identifier — hash of service name, method name, arg shapes, return shape
- PayloadAdapter
- Adapter that bridges
Payload through the opaque field contract. - Ping
- Pong
- ProtocolError
- RequestCall
- RequestCancel
- RequestId
- Request ID identifying an in-flight RPC request.
- RequestMessage
- RequestResponse
- ResponseParts
- A decoded response value paired with response metadata.
- RpcPlan
- Precomputed plan for an RPC type (args, response, or error).
- Rx
- Receiver handle: “I receive”. The holder of an
Rx<T> receives items of type T. - SelfRef
- A decoded value
T that may borrow from its own backing storage. - ServiceDescriptor
- Static descriptor for a roam RPC service.
- SinkCall
- Concrete
Call implementation backed by a ReplySink. - SplitLink
- A
Link assembled from pre-split Tx and Rx halves. - StructInfo
- Information about a struct type.
- Tx
- Sender handle: “I send”. The holder of a
Tx<T> sends items of type T.
- Backing
- ChannelBinding
- The binding stored in a channel core — either a sink or a receiver, never both.
- ChannelBody
- ChannelKind
- The kind of a channel.
- IncomingChannelMessage
- Message delivered to an
Rx by the driver. - MessagePayload
- MetadataValue
- Metadata value.
- Parity
- Whether a peer will use odd or even IDs for requests and channels
on a given connection.
- Payload
- A payload — arguments for a request, or return type for a response.
- RequestBody
- RoamError
- Protocol-level error wrapper distinguishing application errors from roam infrastructure errors.
- RxError
- Error when receiving from an
Rx. - SessionRole
- Whether the session is acting as initiator or acceptor.
- ShapeKind
- Classification of a
Shape for code generation. - TxError
- Error when sending on a
Tx. - VariantKind
- Information about an enum variant for code generation.
- Call
- Represents an in-progress call from a client that must be replied to.
- Caller
- Type-erased handler for incoming service calls.
- ChannelBinder
- Trait for channel operations, implemented by the session driver.
- ChannelSink
- Runtime sink implemented by the session driver.
- Conduit
- Bidirectional typed transport. Wraps a
Link and owns serialization. - ConduitAcceptor
- Yields new conduits from inbound connections.
- ConduitRx
- Receiving half of a
Conduit. - ConduitTx
- Sending half of a
Conduit. - ConduitTxPermit
- Permit for sending exactly one message through a
ConduitTx. - Handler
- IdType
- Trait implemented by all
declare_id! types, enabling generic ID allocation. - Link
- Bidirectional raw-bytes transport.
- LinkRx
- Receiving half of a
Link. - LinkTx
- Sending half of a
Link. - LinkTxPermit
- A permit for allocating exactly one outbound payload.
- MaybeSend
- Marker trait that requires
Send on native targets, nothing on wasm32. - MaybeSync
- Marker trait that requires
Sync on native targets, nothing on wasm32. - MsgFamily
- Maps a lifetime to a concrete message type.
- ReplySink
- Sink for sending a reply back to the caller.
- SharedBacking
- Backing storage for a
SelfRef. - WriteSlot
- A writable slot in the transport’s output buffer.
- bind_channels_callee_args⚠
- Bind channels in deserialized args on the callee side.
- bind_channels_caller_args⚠
- Bind channels in args on the caller side, returning channel IDs.
- channel
- Create a channel pair with shared state.
- classify_shape
- Classify a
Shape into a higher-level semantic kind. - classify_variant
- Classify an enum variant.
- is_bytes
- Check if a shape represents bytes (
Vec<u8> or &[u8]). - is_channel
- Check if a shape represents any channel type (
Tx or Rx). - is_rx
- Check if a shape represents an
Rx channel. - is_tx
- Check if a shape represents a
Tx channel.
- Metadata
- A list of metadata entries.