pub trait StreamTypes: ConnectionErrors {
type In: RpcMessage;
type Out: RpcMessage;
type RecvStream: Stream<Item = Result<Self::In, Self::RecvError>> + Send + Sync + Unpin + 'static;
type SendSink: Sink<Self::Out, Error = Self::SendError> + Send + Sync + Unpin + 'static;
}
Expand description
Required Associated Types§
Sourcetype In: RpcMessage
type In: RpcMessage
The type of messages that can be received on the channel
Sourcetype Out: RpcMessage
type Out: RpcMessage
The type of messages that can be sent on the channel
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<A: Connector, B: Connector<In = A::In, Out = A::Out>> StreamTypes for CombinedConnector<A, B>
impl<A: Connector, B: Connector<In = A::In, Out = A::Out>> StreamTypes for CombinedConnector<A, B>
type In = <A as StreamTypes>::In
type Out = <A as StreamTypes>::Out
type RecvStream = RecvStream<A, B>
type SendSink = SendSink<A, B>
Source§impl<A: Listener, B: Listener<In = A::In, Out = A::Out>> StreamTypes for CombinedListener<A, B>
impl<A: Listener, B: Listener<In = A::In, Out = A::Out>> StreamTypes for CombinedListener<A, B>
type In = <A as StreamTypes>::In
type Out = <A as StreamTypes>::Out
type RecvStream = RecvStream<A, B>
type SendSink = SendSink<A, B>
Source§impl<In, Out, C> StreamTypes for MappedConnector<In, Out, C>
impl<In, Out, C> StreamTypes for MappedConnector<In, Out, C>
type In = In
type Out = Out
type RecvStream = MappedRecvStream<<C as StreamTypes>::RecvStream, In>
type SendSink = MappedSendSink<<C as StreamTypes>::SendSink, Out, <C as StreamTypes>::Out>
Source§impl<In, Out, C> StreamTypes for MappedStreamTypes<In, Out, C>
impl<In, Out, C> StreamTypes for MappedStreamTypes<In, Out, C>
type In = In
type Out = Out
type RecvStream = MappedRecvStream<<C as StreamTypes>::RecvStream, In>
type SendSink = MappedSendSink<<C as StreamTypes>::SendSink, Out, <C as StreamTypes>::Out>
Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for BoxedConnector<In, Out>
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for BoxedConnector<In, Out>
Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for BoxedListener<In, Out>
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for BoxedListener<In, Out>
Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for BoxedStreamTypes<In, Out>
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for BoxedStreamTypes<In, Out>
Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for FlumeConnector<In, Out>
Available on crate feature flume-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for FlumeConnector<In, Out>
Available on crate feature
flume-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for FlumeListener<In, Out>
Available on crate feature flume-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for FlumeListener<In, Out>
Available on crate feature
flume-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for HyperConnector<In, Out>
Available on crate feature hyper-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for HyperConnector<In, Out>
Available on crate feature
hyper-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for HyperListener<In, Out>
Available on crate feature hyper-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for HyperListener<In, Out>
Available on crate feature
hyper-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for IrohConnector<In, Out>
Available on crate feature iroh-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for IrohConnector<In, Out>
Available on crate feature
iroh-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for IrohListener<In, Out>
Available on crate feature iroh-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for IrohListener<In, Out>
Available on crate feature
iroh-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for DummyListener<In, Out>
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for DummyListener<In, Out>
type In = In
type Out = Out
type RecvStream = Pending<Result<In, <DummyListener<In, Out> as ConnectionErrors>::RecvError>>
type SendSink = Box<dyn Sink<Out, Error = <DummyListener<In, Out> as ConnectionErrors>::SendError> + Unpin + Send + Sync>
Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for QuinnConnector<In, Out>
Available on crate feature quinn-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for QuinnConnector<In, Out>
Available on crate feature
quinn-transport
only.Source§impl<In: RpcMessage, Out: RpcMessage> StreamTypes for QuinnListener<In, Out>
Available on crate feature quinn-transport
only.
impl<In: RpcMessage, Out: RpcMessage> StreamTypes for QuinnListener<In, Out>
Available on crate feature
quinn-transport
only.