io_conformance_util

Trait DirectoryProxyExt

Source
pub trait DirectoryProxyExt {
    // Required methods
    fn open3_node<'life0, 'life1, 'async_trait, T>(
        &'life0 self,
        path: &'life1 str,
        flags: Flags,
        options: Option<Options>,
    ) -> Pin<Box<dyn Future<Output = Result<T::Proxy, Status>> + Send + 'async_trait>>
       where T: 'async_trait + ProtocolMarker,
             Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn open3_node_repr<'life0, 'life1, 'async_trait, T>(
        &'life0 self,
        path: &'life1 str,
        flags: Flags,
        options: Option<Options>,
    ) -> Pin<Box<dyn Future<Output = Result<(T::Proxy, Representation), Status>> + Send + 'async_trait>>
       where T: 'async_trait + ProtocolMarker,
             Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}
Expand description

Extension trait for fio::DirectoryProxy to make interactions with the fuchsia.io protocol less verbose.

Required Methods§

Source

fn open3_node<'life0, 'life1, 'async_trait, T>( &'life0 self, path: &'life1 str, flags: Flags, options: Option<Options>, ) -> Pin<Box<dyn Future<Output = Result<T::Proxy, Status>> + Send + 'async_trait>>
where T: 'async_trait + ProtocolMarker, Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Open path specified using flags and options, returning a proxy to the remote resource.

Waits for fio::NodeEvent::OnRepresentation if fio::Flags::FLAG_SEND_REPRESENTATION is specified, otherwise calls fuchsia.io/Node.GetConnectionInfo to verify the result.

Source

fn open3_node_repr<'life0, 'life1, 'async_trait, T>( &'life0 self, path: &'life1 str, flags: Flags, options: Option<Options>, ) -> Pin<Box<dyn Future<Output = Result<(T::Proxy, Representation), Status>> + Send + 'async_trait>>
where T: 'async_trait + ProtocolMarker, Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Similar to DirectoryProxyExt::open3_node, but waits for and returns the fio::NodeEvent::OnRepresentation event sent when opening a resource.

Requires fio::Flags::FLAG_SEND_REPRESENTATION to be specified in flags.

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 DirectoryProxyExt for DirectoryProxy

Source§

fn open3_node<'life0, 'life1, 'async_trait, T>( &'life0 self, path: &'life1 str, flags: Flags, options: Option<Options>, ) -> Pin<Box<dyn Future<Output = Result<T::Proxy, Status>> + Send + 'async_trait>>
where T: 'async_trait + ProtocolMarker, Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source§

fn open3_node_repr<'life0, 'life1, 'async_trait, T>( &'life0 self, path: &'life1 str, flags: Flags, options: Option<Options>, ) -> Pin<Box<dyn Future<Output = Result<(T::Proxy, Representation), Status>> + Send + 'async_trait>>
where T: 'async_trait + ProtocolMarker, Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Implementors§