fn move_to_slice<T>(src: &[MaybeUninit<T>], dst: &mut [MaybeUninit<T>]) {
    assert!(src.len() == dst.len());
    unsafe {
        ptr::copy_nonoverlapping(src.as_ptr(), dst.as_mut_ptr(), src.len());
    }
}
/// Moves all values from a slice of initialized elements to a slice
/// of uninitialized elements, leaving behind `src` as all uninitialized.
/// Works like `dst.copy_from_slice(src)` but does not require `T` to be `Copy`.
Moves all values from a slice of initialized elements to a slice
of uninitialized elements, leaving behind `src` as all uninitialized.
Moves all values from a slice of initialized elements to a slice of uninitialized elements leaving behind ` src ` as all uninitialized .
fn move_to_slice<T>(src: &[MaybeUninit<T>], dst: &mut [MaybeUninit<T>]) {
    assert!(src.len() == dst.len());
    unsafe {
        ptr::copy_nonoverlapping(src.as_ptr(), dst.as_mut_ptr(), src.len());
    }
}
fn move_to_slice < T > ( src : & [ MaybeUninit < T > ] , dst : & mut [ MaybeUninit < T > ] ) { assert ! ( src len ( ) dst len ( ) ) ; unsafe { ptr :: copy_nonoverlapping ( src . as_ptr ( ) , dst . as_mut_ptr ( ) , src . len ( ) ) ; } }
Moves all values from a slice of initialized elements to a slice
of uninitialized elements, leaving behind `src` as all uninitialized.
Moves all values from a slice of initialized elements to a slice of uninitialized elements leaving behind ` src ` as all uninitialized .
src
&[MaybeUninit<T>]
dst
&mut [MaybeUninit<T>]
src
&[MaybeUninit<T>]
dst
&mut [MaybeUninit<T>]