RSocket

Trait RSocket 

Source
pub trait RSocket: ConditionallySendSync {
    // Required methods
    fn fire_and_forget(&self, payload: RawPayload) -> BoxMono<(), PayloadError>;
    fn request_response(
        &self,
        payload: RawPayload,
    ) -> BoxMono<RawPayload, PayloadError>;
    fn request_stream(
        &self,
        payload: RawPayload,
    ) -> BoxFlux<RawPayload, PayloadError>;
    fn request_channel<T: Stream<Item = Result<RawPayload, PayloadError>> + ConditionallySend + Unpin + 'static>(
        &self,
        stream: T,
    ) -> BoxFlux<RawPayload, PayloadError>;
}
Expand description

A trait for an RSocket client/server (host/guest).

Required Methods§

Source

fn fire_and_forget(&self, payload: RawPayload) -> BoxMono<(), PayloadError>

Fire and Forget interaction model of RSocket.

Source

fn request_response( &self, payload: RawPayload, ) -> BoxMono<RawPayload, PayloadError>

Request-Response interaction model of RSocket.

Source

fn request_stream( &self, payload: RawPayload, ) -> BoxFlux<RawPayload, PayloadError>

Request-Stream interaction model of RSocket.

Source

fn request_channel<T: Stream<Item = Result<RawPayload, PayloadError>> + ConditionallySend + Unpin + 'static>( &self, stream: T, ) -> BoxFlux<RawPayload, PayloadError>

Request-Channel interaction model of RSocket.

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§