Type Alias WritableProxy

Source
pub type WritableProxy = ClientSender<Channel, Writable>;
Expand description

An alias for a client sender over zx::Channel for the Writable protocol.

Aliased Type§

struct WritableProxy { /* private fields */ }

Implementations

§

impl<T, P> ClientSender<T, P>
where T: Transport,

pub fn wrap_untyped(client: &ClientSender<T>) -> &ClientSender<T, P>

Wraps an untyped sender reference, returning a typed sender reference.

pub fn as_untyped(&self) -> &ClientSender<T>

Returns the underlying untyped sender.

pub fn close(&self)

Closes the channel from the client end.

Trait Implementations

§

impl<T, P> Clone for ClientSender<T, P>
where T: Transport,

§

fn clone(&self) -> ClientSender<T, P>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<___T> WritableClientSender for ClientSender<___T, Writable>
where ___T: Transport,

Source§

fn write<___R>( &self, request: ___R, ) -> Result<ResponseFuture<'_, Self::Transport, Write>, EncodeError>
where ___R: Encode<<Self::Transport as Transport>::SendBuffer, Encoded = WireWritableWriteRequest<'static>>,

Writes data at the seek offset. The seek offset is moved forward by the number of bytes written. If the file is in append mode, the seek offset is first set to the end of the file, followed by the write, in one atomic step.

The file size may grow if the seek offset plus data.length is beyond the current end of file.

  • request data the byte buffer to write to the file.
  • response actual_count the number of bytes written.
§Invariants
  • The returned actual_count will never be greater than data.length.
  • If the server is unable to write all the data due to e.g. not enough space, actual_count may be less than data.length. If no bytes could be written, an error is returned.
  • If data.length is zero, the server should perform all the checks ensuring write access without mutating the file and return a successful write of zero bytes. The seek offset is still updated if in append mode.

This method requires the [Rights.WRITE_BYTES] right.

Source§

type Transport = ___T

§

impl<T, P> Send for ClientSender<T, P>
where T: Transport, ClientSender<T>: Send,