NativeUnpack

Trait NativeUnpack 

Source
pub trait NativeUnpack: Sized {
    // Required method
    fn unpack_unchecked(buffer: &[u8]) -> Self;

    // Provided methods
    fn unpack(buffer: &[u8]) -> Result<Self> { ... }
    fn unpack_with_size(buffer: &[u8]) -> Result<(usize, Self)> { ... }
}
Expand description

Trait for unpacking byte slice into a value, using native endian

Required Methods§

Source

fn unpack_unchecked(buffer: &[u8]) -> Self

Unpack byte slice into value without failing

Provided Methods§

Source

fn unpack(buffer: &[u8]) -> Result<Self>

Unpack byte slice into value

Source

fn unpack_with_size(buffer: &[u8]) -> Result<(usize, Self)>

Unpack byte slice into value, also returning size used

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl NativeUnpack for f32

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for f64

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for i8

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for i16

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for i32

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for i64

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for u8

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for u16

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for u32

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for u64

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for Vec<u8>

Source§

fn unpack(buffer: &[u8]) -> Result<Self>

Source§

fn unpack_with_size(buffer: &[u8]) -> Result<(usize, Self)>

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Source§

impl NativeUnpack for Vec<u32>

Source§

fn unpack_with_size(buffer: &[u8]) -> Result<(usize, Self)>

Source§

fn unpack_unchecked(buffer: &[u8]) -> Self

Implementors§