Function scratchpad::uninitialized_boxed_slice_for_bytes [−][src]
pub unsafe fn uninitialized_boxed_slice_for_bytes<T>(bytes: usize) -> Box<[T]> where
T: ByteData,
Returns a boxed slice of uninitialized data large enough to hold at least the specified number of bytes.
Safety
The contents of the boxed slice are left uninitialized; reading from and writing to the slice contents can trigger undefined behavior if not careful.
It is strongly recommended to only allocate slices of
[MaybeUninit
]-wrapped types if supported by the version of Rust used, as
using slices of non-wrapped types cause undefined behavior. This function
will most likely be updated to enforce this restriction in future major
releases of this crate.
Examples
use scratchpad::uninitialized_boxed_slice_for_bytes; use std::mem::MaybeUninit; let buffer = unsafe { uninitialized_boxed_slice_for_bytes::<MaybeUninit<u32>>(32) }; assert_eq!(buffer.len(), 8);