pub struct Framed<Transport, Item, SinkItem, Codec> { /* private fields */ }
Expand description

Adapts a transport to a value sink by serializing the values and to a stream of values by deserializing them.

It is expected that the buffers yielded by the supplied transport be framed. In other words, each yielded buffer must represent exactly one serialized value.

The provided transport will receive 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-util.

Implementations

Creates a new Framed with the given transport and codec.

Returns a reference to the underlying transport wrapped by Framed.

Note that care should be taken to not tamper with the underlying transport as it may corrupt the sequence of frames otherwise being worked with.

Returns a mutable reference to the underlying transport wrapped by Framed.

Note that care should be taken to not tamper with the underlying transport as it may corrupt the sequence of frames otherwise being worked with.

Consumes the Framed, returning its underlying transport.

Note that care should be taken to not tamper with the underlying transport as it may corrupt the sequence of frames otherwise being worked with.

Trait Implementations

Formats the value using the given formatter. Read more

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

Attempts to prepare the Sink to receive a value. Read more

Begin the process of sending a value to the sink. Each call to this function must be preceded by a successful call to poll_ready which returned Poll::Ready(Ok(())). Read more

Flush any remaining output from this sink. Read more

Flush any remaining output and close this sink, if necessary. Read more

Values yielded by the stream.

Attempt to pull out the next value of this stream, registering the current task for wakeup if the value is not yet available, and returning None if the stream is exhausted. Read more

Returns the bounds on the remaining length of the stream. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type of successful values yielded by this future

The type of failures yielded by this future

Poll this TryStream as if it were a Stream. Read more