Struct tokio_serde::FramedWrite
[−]
[src]
pub struct FramedWrite<T, U, S> where
T: Sink, { /* fields omitted */ }
Adapts a buffer sink to a value sink by serializing the values.
The provided buffer sink will received buffer values containing the
serialized value. Each buffer contains exactly one value. This sink will be
responsible for writing these buffers to an AsyncWrite
using some sort of
framing strategy. The specific framing strategy is left up to the
implementor. One option would be to use length_delimited provided by
tokio-io.
Methods
impl<T, U, S> FramedWrite<T, U, S> where
T: Sink<SinkItem = BytesMut, SinkError = Error>,
S: Serializer<U>,
S::Error: Into<Error>,
[src]
T: Sink<SinkItem = BytesMut, SinkError = Error>,
S: Serializer<U>,
S::Error: Into<Error>,
fn new(inner: T, serializer: S) -> Self
Creates a new FramedWrite
with the given buffer sink and serializer.
impl<T: Sink, U, S> FramedWrite<T, U, S>
[src]
fn get_ref(&self) -> &T
Returns a reference to the underlying sink wrapped by FramedWrite
.
Note that care should be taken to not tamper with the underlying sink as it may corrupt the sequence of frames otherwise being worked with.
fn get_mut(&mut self) -> &mut T
Returns a mutable reference to the underlying sink wrapped by
FramedWrite
.
Note that care should be taken to not tamper with the underlying sink as it may corrupt the sequence of frames otherwise being worked with.
fn into_inner(self) -> T
Consumes the FramedWrite
, returning its underlying sink.
Note that care should be taken to not tamper with the underlying sink as it may corrupt the sequence of frames otherwise being worked with.
Trait Implementations
impl<T, U, S> Sink for FramedWrite<T, U, S> where
T: Sink<SinkItem = BytesMut, SinkError = Error>,
S: Serializer<U>,
S::Error: Into<Error>,
[src]
T: Sink<SinkItem = BytesMut, SinkError = Error>,
S: Serializer<U>,
S::Error: Into<Error>,
type SinkItem = U
The type of value that the sink accepts.
type SinkError = Error
The type of value produced by the sink when an error occurs.
fn start_send(&mut self, item: U) -> StartSend<U, Error>
Begin the process of sending a value to the sink. Read more
fn poll_complete(&mut self) -> Poll<(), Error>
Flush all output from this sink, if necessary. Read more
fn close(&mut self) -> Poll<(), Error>
A method to indicate that no more values will ever be pushed into this sink. Read more
fn wait(self) -> Wait<Self>
Creates a new object which will produce a synchronous sink. Read more
fn with<U, F, Fut>(self, f: F) -> With<Self, U, F, Fut> where
F: FnMut(U) -> Fut,
Fut: IntoFuture<Item = Self::SinkItem>,
<Fut as IntoFuture>::Error: From<Self::SinkError>,
F: FnMut(U) -> Fut,
Fut: IntoFuture<Item = Self::SinkItem>,
<Fut as IntoFuture>::Error: From<Self::SinkError>,
Composes a function in front of the sink. Read more
fn sink_map_err<F, E>(self, f: F) -> SinkMapErr<Self, F> where
F: FnOnce(Self::SinkError) -> E,
F: FnOnce(Self::SinkError) -> E,
Transforms the error returned by the sink.
fn sink_from_err<E>(self) -> SinkFromErr<Self, E> where
E: From<Self::SinkError>,
E: From<Self::SinkError>,
Map this sink's error to any error implementing From
for this sink's Error
, returning a new sink. Read more
fn buffer(self, amt: usize) -> Buffer<Self>
Adds a fixed-size buffer to the current sink. Read more
fn flush(self) -> Flush<Self>
A future that completes when the sink has finished processing all pending requests. Read more
fn send(self, item: Self::SinkItem) -> Send<Self>
A future that completes after the given item has been fully processed into the sink, including flushing. Read more
fn send_all<S>(self, stream: S) -> SendAll<Self, S> where
S: Stream<Item = Self::SinkItem>,
Self::SinkError: From<<S as Stream>::Error>,
S: Stream<Item = Self::SinkItem>,
Self::SinkError: From<<S as Stream>::Error>,
A future that completes after the given stream has been fully processed into the sink, including flushing. Read more