pub trait SynchronousProxy: Sized + Send + Sync {
    type Proxy: Proxy<Protocol = Self::Protocol>;
    type Protocol: ProtocolMarker<Proxy = Self::Proxy>;

    // Required methods
    fn from_channel(inner: Channel) -> Self;
    fn into_channel(self) -> Channel;
    fn as_channel(&self) -> &Channel;
Expand description

A type which allows querying a remote FIDL server over a channel, blocking the calling thread.

Required Associated Types§


type Proxy: Proxy<Protocol = Self::Protocol>

The async proxy for the same protocol.


type Protocol: ProtocolMarker<Proxy = Self::Proxy>

The protocol which this Proxy controls.

Required Methods§


fn from_channel(inner: Channel) -> Self

Create a proxy over the given channel.


fn into_channel(self) -> Channel

Convert the proxy back into a channel.


fn as_channel(&self) -> &Channel

Get a reference to the proxy’s underlying channel.

This should only be used for non-effectful operations. Reading or writing to the channel is unsafe because the proxy assumes it has exclusive control over these operations.

Object Safety§

This trait is not object safe.