Trait DirReceiverClientSender

Source
pub trait DirReceiverClientSender {
    type Transport: Transport;

    // Required method
    fn receive<___R>(
        &self,
        request: &mut ___R,
    ) -> Result<SendFuture<'_, Self::Transport>, EncodeError>
       where ___R: Encode<<Self::Transport as Transport>::SendBuffer, Encoded = WireDirReceiverReceiveRequest>;
}
Expand description

A helper trait for the DirReceiver client sender.

Required Associated Types§

Source

type Transport: Transport

Required Methods§

Source

fn receive<___R>( &self, request: &mut ___R, ) -> Result<SendFuture<'_, Self::Transport>, EncodeError>
where ___R: Encode<<Self::Transport as Transport>::SendBuffer, Encoded = WireDirReceiverReceiveRequest>,

Sends a directory channel to this receiver.

The server should implement this method by forwarding channel to a vfs instance of the language appropriate vfs library. To keep this interface decoupled from fuchsia.io, it deliberately omits Open/Open3 parameters such as flags and path. If a client wishes to specify these, they can obtain an initial [fuchsia.io/Directory] channel first and then call Open/Open3 on it.

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.

Implementations on Foreign Types§

Source§

impl<___T> DirReceiverClientSender for ClientSender<___T, DirReceiver>
where ___T: Transport,

Source§

fn receive<___R>( &self, request: &mut ___R, ) -> Result<SendFuture<'_, Self::Transport>, EncodeError>
where ___R: Encode<<Self::Transport as Transport>::SendBuffer, Encoded = WireDirReceiverReceiveRequest>,

Sends a directory channel to this receiver.

The server should implement this method by forwarding channel to a vfs instance of the language appropriate vfs library. To keep this interface decoupled from fuchsia.io, it deliberately omits Open/Open3 parameters such as flags and path. If a client wishes to specify these, they can obtain an initial [fuchsia.io/Directory] channel first and then call Open/Open3 on it.

Source§

type Transport = ___T

Implementors§