Trait packable::PackableExt

source ·
pub trait PackableExt: Packable {
    // Required methods
    fn packed_len(&self) -> usize;
    fn pack_to_vec(&self) -> Vec<u8> ;
    fn unpack_verified<T: AsRef<[u8]>>(
        bytes: T,
        visitor: &Self::UnpackVisitor
    ) -> Result<Self, UnpackError<<Self as Packable>::UnpackError, UnexpectedEOF>>;
    fn unpack_unverified<T: AsRef<[u8]>>(
        bytes: T
    ) -> Result<Self, UnpackError<<Self as Packable>::UnpackError, UnexpectedEOF>>;
}
Expand description

Extension trait for types that implement Packable.

Required Methods§

source

fn packed_len(&self) -> usize

Returns the length in bytes of the value after being packed. The returned value always matches the number of bytes written using pack.

source

fn pack_to_vec(&self) -> Vec<u8>

Convenience method that packs this value into a Vec<u8>.

source

fn unpack_verified<T: AsRef<[u8]>>( bytes: T, visitor: &Self::UnpackVisitor ) -> Result<Self, UnpackError<<Self as Packable>::UnpackError, UnexpectedEOF>>

Unpacks this value from a sequence of bytes doing syntactical checks.

source

fn unpack_unverified<T: AsRef<[u8]>>( bytes: T ) -> Result<Self, UnpackError<<Self as Packable>::UnpackError, UnexpectedEOF>>

Unpacks this value from a sequence of bytes without doing syntactical checks.

Object Safety§

This trait is not object safe.

Implementors§