[][src]Struct async_bincode::AsyncBincodeWriter

pub struct AsyncBincodeWriter<W, T, D> { /* fields omitted */ }

A wrapper around an asynchronous sink that accepts, serializes, and sends bincode-encoded values.

To use, provide a writer that implements futures::AsyncWrite, and then use futures::Sink to send values.

Note that an AsyncBincodeWriter must be of the type AsyncDestination in order to be compatible with an [AsyncBincodeReader] on the remote end (recall that it requires the serialized size prefixed to the serialized data). The default is SyncDestination, but these can be easily toggled between using AsyncBincodeWriter::for_async.

Methods

impl<W, T, D> AsyncBincodeWriter<W, T, D>[src]

pub fn get_ref(&self) -> &W[src]

Gets a reference to the underlying writer.

It is inadvisable to directly write to the underlying writer.

pub fn get_mut(&mut self) -> &mut W[src]

Gets a mutable reference to the underlying writer.

It is inadvisable to directly write to the underlying writer.

pub fn into_inner(self) -> W[src]

Unwraps this AsyncBincodeWriter, returning the underlying writer.

Note that any leftover serialized data that has not yet been sent is lost.

impl<W, T> AsyncBincodeWriter<W, T, SyncDestination>[src]

pub fn for_async(self) -> AsyncBincodeWriter<W, T, AsyncDestination>[src]

Make this writer include the serialized data's size before each serialized value.

This is necessary for compatability with [AsyncBincodeReader].

impl<W, T> AsyncBincodeWriter<W, T, AsyncDestination>[src]

pub fn for_sync(self) -> AsyncBincodeWriter<W, T, SyncDestination>[src]

Make this writer only send bincode-encoded values.

This is necessary for compatability with stock bincode receivers.

Trait Implementations

impl<W, T> From<W> for AsyncBincodeWriter<W, T, SyncDestination>[src]

impl<W, T> Default for AsyncBincodeWriter<W, T, SyncDestination> where
    W: Default
[src]

impl<W, T, D> Unpin for AsyncBincodeWriter<W, T, D> where
    W: Unpin
[src]

impl<W: Debug, T: Debug, D: Debug> Debug for AsyncBincodeWriter<W, T, D>[src]

impl<W, T, D> Sink<T> for AsyncBincodeWriter<W, T, D> where
    T: Serialize,
    W: AsyncWrite + Unpin,
    Self: BincodeWriterFor<T>, 
[src]

type Error = Error

The type of value produced by the sink when an error occurs.

Auto Trait Implementations

impl<W, T, D> Sync for AsyncBincodeWriter<W, T, D> where
    D: Sync,
    T: Sync,
    W: Sync

impl<W, T, D> Send for AsyncBincodeWriter<W, T, D> where
    D: Send,
    T: Send,
    W: Send

impl<W, T, D> UnwindSafe for AsyncBincodeWriter<W, T, D> where
    D: UnwindSafe,
    T: UnwindSafe,
    W: UnwindSafe

impl<W, T, D> RefUnwindSafe for AsyncBincodeWriter<W, T, D> where
    D: RefUnwindSafe,
    T: RefUnwindSafe,
    W: RefUnwindSafe

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T, Item> SinkExt<Item> for T where
    T: Sink<Item> + ?Sized
[src]