diff --git a/src/types/array.rs b/src/types/array.rs index a7be41f..2d5dd75 100644 --- a/src/types/array.rs +++ b/src/types/array.rs @@ -3,6 +3,8 @@ use crate::core::{ SizeValue, WriteInto, Writer, }; +use core::mem::{size_of, MaybeUninit}; + pub struct ArrayMetadata { pub stride: SizeValue, pub el_padding: u64, @@ -68,8 +70,7 @@ where fn write_into(&self, writer: &mut Writer) { if_pod_and_little_endian!(if pod_and_little_endian { let ptr = self.as_ptr() as *const u8; - let byte_slice: &[u8] = - unsafe { core::slice::from_raw_parts(ptr, core::mem::size_of::()) }; + let byte_slice: &[u8] = unsafe { core::slice::from_raw_parts(ptr, size_of::()) }; writer.write_slice(byte_slice); } else { for elem in self { @@ -89,7 +90,7 @@ where if_pod_and_little_endian!(if pod_and_little_endian { let ptr = self.as_mut_ptr() as *mut u8; let byte_slice: &mut [u8] = - unsafe { core::slice::from_raw_parts_mut(ptr, core::mem::size_of::()) }; + unsafe { core::slice::from_raw_parts_mut(ptr, size_of::()) }; reader.read_slice(byte_slice); } else { for elem in self { @@ -107,11 +108,11 @@ where #[inline] fn create_from(reader: &mut Reader) -> Self { if_pod_and_little_endian!(if pod_and_little_endian { - let mut me = core::mem::MaybeUninit::zeroed(); - let ptr: *mut core::mem::MaybeUninit = &mut me; + let mut me = MaybeUninit::zeroed(); + let ptr: *mut MaybeUninit = &mut me; let ptr = ptr.cast::(); let byte_slice: &mut [u8] = - unsafe { core::slice::from_raw_parts_mut(ptr, core::mem::size_of::()) }; + unsafe { core::slice::from_raw_parts_mut(ptr, size_of::()) }; reader.read_slice(byte_slice); // SAFETY: All values were properly initialized by reading the bytes. unsafe { me.assume_init() }