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§
Sourcefn fire_and_forget(&self, payload: RawPayload) -> BoxMono<(), PayloadError>
fn fire_and_forget(&self, payload: RawPayload) -> BoxMono<(), PayloadError>
Fire and Forget interaction model of RSocket.
Sourcefn request_response(
&self,
payload: RawPayload,
) -> BoxMono<RawPayload, PayloadError>
fn request_response( &self, payload: RawPayload, ) -> BoxMono<RawPayload, PayloadError>
Request-Response interaction model of RSocket.
Sourcefn request_stream(
&self,
payload: RawPayload,
) -> BoxFlux<RawPayload, PayloadError>
fn request_stream( &self, payload: RawPayload, ) -> BoxFlux<RawPayload, PayloadError>
Request-Stream interaction model of RSocket.
Sourcefn request_channel<T: Stream<Item = Result<RawPayload, PayloadError>> + ConditionallySend + Unpin + 'static>(
&self,
stream: T,
) -> BoxFlux<RawPayload, PayloadError>
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.