usebytes::BytesMut;usestd::io;/// Trait of helper objects to write out messages as bytes, for use with
/// `FramedWrite`.
pubtraitEncoder{/// The type of items consumed by the `Encoder`
typeItem;/// The type of encoding errors.
////// `FramedWrite` requires `Encoder`s errors to implement `From<io::Error>`
/// in the interest letting it return `Error`s directly.
typeError:From<io::Error>;/// Encodes a frame into the buffer provided.
////// This method will encode `item` into the byte buffer provided by `dst`.
/// The `dst` provided is an internal buffer of the `Framed` instance and
/// will be written out when possible.
fnencode(&mutself, item:Self::Item, dst:&mut BytesMut)->Result<(), Self::Error>;}