quic_rpc

Trait RpcMessage

Source
pub trait RpcMessage:
    Debug
    + Serialize
    + DeserializeOwned
    + Send
    + Sync
    + Unpin
    + 'static { }
Expand description

Requirements for a RPC message

Even when just using the mem transport, we require messages to be Serializable and Deserializable. Likewise, even when using the quinn transport, we require messages to be Send.

This does not seem like a big restriction. If you want a pure memory channel without the possibility to also use the quinn transport, you might want to use a mpsc channel directly.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<T> RpcMessage for T
where T: Debug + Serialize + DeserializeOwned + Send + Sync + Unpin + 'static,