rapace_core/
lib.rs

1//! rapace-core: Core types and traits for the rapace RPC system.
2//!
3//! This crate defines:
4//! - Frame descriptors ([`MsgDescHot`], [`MsgDescCold`])
5//! - Frame types ([`Frame`], [`FrameView`])
6//! - Message header ([`MsgHeader`])
7//! - Transport traits ([`Transport`], [`DynTransport`])
8//! - Encoding traits ([`EncodeCtx`], [`DecodeCtx`])
9//! - Error codes and flags ([`ErrorCode`], [`FrameFlags`], [`Encoding`])
10//! - Control payloads ([`ControlPayload`])
11//! - Validation ([`validate_descriptor`], [`DescriptorLimits`])
12
13#![forbid(unsafe_op_in_unsafe_fn)]
14
15mod control;
16mod descriptor;
17mod encoding;
18mod error;
19mod flags;
20mod frame;
21mod header;
22mod limits;
23mod session;
24mod streaming;
25mod transport;
26mod validation;
27
28pub use control::*;
29pub use descriptor::*;
30pub use encoding::*;
31pub use error::*;
32pub use flags::*;
33pub use frame::*;
34pub use header::*;
35pub use limits::*;
36pub use session::*;
37pub use streaming::*;
38pub use transport::*;
39pub use validation::*;
40
41// Re-export StreamExt for use by macro-generated streaming clients
42pub use futures::StreamExt;
43
44// Re-export try_stream for use by macro-generated streaming clients
45pub use async_stream::try_stream;