Crate rapace_core

Crate rapace_core 

Source
Expand description

rapace-core: Core types and traits for the rapace RPC system.

This crate defines:

Modules§

control_method
Control method IDs.

Macros§

try_stream
Asynchronous fallible stream

Structs§

DescriptorLimits
Limits for descriptor validation.
Frame
Owned frame for sending or storage.
FrameFlags
Flags carried in each frame descriptor.
FrameView
Borrowed view of a frame for zero-copy receive.
MsgDescCold
Cold-path message descriptor (observability data).
MsgDescHot
Hot-path message descriptor (64 bytes, one cache line).
MsgHeader
Message header at the start of each payload.
ReceivedFrame
A frame that was received and routed.
RpcSession
RpcSession owns a transport and multiplexes frames between clients and servers.
TunnelChunk
A chunk received on a tunnel channel.

Enums§

CancelReason
Reasons for cancelling a channel.
CloseReason
Reasons for closing a channel.
ControlPayload
Control channel payloads (channel 0).
DecodeError
Decoding errors.
EncodeError
Encoding errors.
Encoding
Body encoding format.
ErrorCode
RPC error codes.
RpcError
High-level RPC errors.
TransportError
Transport-level errors.
ValidationError
Descriptor validation errors.

Constants§

INLINE_PAYLOAD_SIZE
Size of inline payload in bytes.
INLINE_PAYLOAD_SLOT
Sentinel value indicating payload is inline (not in a slot).
MSG_HEADER_SIZE
Size of MsgHeader in bytes.
MSG_HEADER_VERSION
Current message header version.
NO_DEADLINE
Sentinel value indicating no deadline.

Traits§

DecodeCtx
Context for decoding frames into values.
DynTransport
Object-safe version of Transport for dynamic dispatch.
EncodeCtx
Context for encoding values into frames.
StreamExt
An extension trait for Streams that provides a variety of convenient combinator functions.
StreamSink
A sink for sending streaming items from server to client.
StreamSource
A source for receiving streaming items (used in client-streaming).
Streamable
Marker trait for types that can be streamed.
Transport
A transport moves frames between two peers.

Functions§

parse_error_payload
Helper to parse an error from a response payload.
validate_descriptor
Validate a descriptor against the given limits.

Type Aliases§

BoxFuture
Boxed future type for object-safe transport.
BoxedDispatcher
Type alias for a boxed async dispatch function.
Streaming
Type alias for streaming RPC results.