Trait ndarray_npy::ViewMutElement

source ·
pub trait ViewMutElement: Sized {
    // Required method
    fn bytes_as_mut_slice<'a>(
        bytes: &'a mut [u8],
        type_desc: &PyValue,
        len: usize,
    ) -> Result<&'a mut [Self], ViewDataError>;
}
Expand description

An array element type that can be mutably viewed (without copying) in an .npy file.

Required Methods§

source

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &PyValue, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

Casts bytes into a mutable slice of elements of length len.

Returns Err(_) in at least the following cases:

  • if the type_desc does not match Self with native endianness
  • if the bytes slice is misaligned for elements of type Self
  • if the bytes slice is too short for len elements
  • if the bytes slice has extra bytes after len elements

May panic if len * size_of::<Self>() overflows.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl ViewMutElement for bool

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &PyValue, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for f32

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for f64

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for i8

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &PyValue, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for i16

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for i32

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for i64

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for u8

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &PyValue, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for u16

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for u32

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for u64

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for Complex<f32>

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

source§

impl ViewMutElement for Complex<f64>

source§

fn bytes_as_mut_slice<'a>( bytes: &'a mut [u8], type_desc: &Value, len: usize, ) -> Result<&'a mut [Self], ViewDataError>

Implementors§