Trait RequestStream
pub trait RequestStream:
Sized
+ Send
+ Stream
+ TryStream<Error = Error>
+ Unpin {
type Protocol: ProtocolMarker<RequestStream = Self>;
type ControlHandle: ControlHandle;
// Required methods
fn control_handle(&self) -> Self::ControlHandle;
fn from_channel(inner: Channel) -> Self;
fn into_inner(self) -> (Arc<ServeInner>, bool);
fn from_inner(inner: Arc<ServeInner>, is_terminated: bool) -> Self;
// Provided method
fn cast_stream<T>(self) -> T
where T: RequestStream { ... }
}
Expand description
A stream of requests coming into a FIDL server over a channel.
Required Associated Types§
type Protocol: ProtocolMarker<RequestStream = Self>
type Protocol: ProtocolMarker<RequestStream = Self>
The protocol which this RequestStream
serves.
type ControlHandle: ControlHandle
type ControlHandle: ControlHandle
The control handle for this RequestStream
.
Required Methods§
fn control_handle(&self) -> Self::ControlHandle
fn control_handle(&self) -> Self::ControlHandle
Returns a copy of the ControlHandle
for the given stream.
This handle can be used to send events or shut down the request stream.
fn from_channel(inner: Channel) -> Self
fn from_channel(inner: Channel) -> Self
Create a request stream from the given channel.
fn into_inner(self) -> (Arc<ServeInner>, bool)
fn into_inner(self) -> (Arc<ServeInner>, bool)
Convert this channel into its underlying components.
fn from_inner(inner: Arc<ServeInner>, is_terminated: bool) -> Self
fn from_inner(inner: Arc<ServeInner>, is_terminated: bool) -> Self
Create this channel from its underlying components.
Provided Methods§
fn cast_stream<T>(self) -> Twhere
T: RequestStream,
fn cast_stream<T>(self) -> Twhere
T: RequestStream,
Convert this FIDL request stream into a request stream of another FIDL protocol.
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.