Struct ntex_codec::Framed [−][src]
pub struct Framed<T, U> { /* fields omitted */ }
Expand description
A unified interface to an underlying I/O object, using
the Encoder
and Decoder
traits to encode and decode frames.
Framed
is heavily optimized for streaming io.
Implementations
Provides an interface for reading and writing to
Io
object, using Decode
and Encode
traits of codec.
Raw I/O objects work with byte sequences, but higher-level code usually
wants to batch these into meaningful chunks, called “frames”. This
method layers framing on top of an I/O object, by using the Codec
traits to handle encoding and decoding of messages frames. Note that
the incoming and outgoing frame types may be distinct.
Construct Framed
object parts
.
Returns a mutable reference to the underlying codec.
Returns a reference to the underlying I/O stream wrapped by Framed
.
Note that care should be taken to not tamper with the underlying stream of data coming in as it may corrupt the stream of frames otherwise being worked with.
Returns a mutable reference to the underlying I/O stream wrapped by
Framed
.
Note that care should be taken to not tamper with the underlying stream of data coming in as it may corrupt the stream of frames otherwise being worked with.
Check if write buffer is empty.
Check if write buffer is full.
Consume the Frame
, returning Frame
with different codec.
Consume the Frame
, returning Frame
with different io.
Consume the Frame
, returning Frame
with different codec.
Consumes the Frame
, returning its underlying I/O stream, the buffer
with unprocessed data, and the codec.
Note that care should be taken to not tamper with the underlying stream of data coming in as it may corrupt the stream of frames otherwise being worked with.
Serialize item and Write to the inner buffer
Check if framed is able to write more data.
Framed
object considers ready if there is free space in write buffer.
Trait Implementations
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