byte_slice_cast

Trait AsMutSliceOf

Source
pub trait AsMutSliceOf {
    // Required method
    fn as_mut_slice_of<T: FromByteSlice>(&mut self) -> Result<&mut [T], Error>;
}
Expand description

Trait for converting from a mutable byte slice to a mutable slice of a fundamental, built-in numeric type.

§Example

use byte_slice_cast::*;

let mut slice = [1u8, 2u8, 3u8, 4u8, 5u8, 6u8];
let converted_slice = slice.as_mut_slice_of::<u16>().unwrap();

if cfg!(target_endian = "big") {
    assert_eq!(converted_slice, &[0x0102, 0x0304, 0x0506]);
} else {
    assert_eq!(converted_slice, &[0x0201, 0x0403, 0x0605]);
}

Required Methods§

Source

fn as_mut_slice_of<T: FromByteSlice>(&mut self) -> Result<&mut [T], Error>

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.

Implementors§

Source§

impl<U: AsMut<[u8]> + ?Sized> AsMutSliceOf for U