fn cast_copy<T: ByteSafe>(&self) -> T
    {
        <T>::bytesafe();
        <Self>::bytesafe();

        /* Uninitialized is safe here as we will fill in all of the bytes */
        let mut ret = core::mem::MaybeUninit::<T>::uninit();
        unsafe {
            self.cast_copy_into(&mut *ret.as_mut_ptr());
            ret.assume_init()
        }
    }
/// Copy the underlying bits from `Self` into a new structure of type `T`
///
/// This creates a new `T` on the stack as uninitialized, calls
/// `cast_copy_into()` to copy Self into it, and returns the result.
///
/// This function will panic if `Self` is not the same size as T


This function will panic if `Self` is not the same size as T
This function will panic if ` Self ` is not the same size as T
fn cast_copy<T: ByteSafe>(&self) -> T
    {
        <T>::bytesafe();
        <Self>::bytesafe();
        /* Uninitialized is safe here as we will fill in all of the bytes */
        let mut ret = core::mem::MaybeUninit::<T>::uninit();
        unsafe {
            self.cast_copy_into(&mut *ret.as_mut_ptr());
            ret.assume_init()
        }
    }
fn cast_copy < T : ByteSafe > ( & self ) -> T { < T > :: bytesafe ( ) ; < Self > :: bytesafe ( ) ; /* Uninitialized is safe here as we will fill in all of the bytes */ let mut ret = core :: mem :: MaybeUninit :: < T > :: uninit ( ) ; unsafe { self . cast_copy_into ( & mut * ret . as_mut_ptr ( ) ) ; ret . assume_init ( ) } }
Copy the underlying bits from `Self` into a new structure of type `T`
This creates a new `T` on the stack as uninitialized, calls
`cast_copy_into()` to copy Self into it, and returns the result.
Copy the underlying bits from ` Self ` into a new structure of type ` T ` This creates a new ` T ` on the stack as uninitialized calls ` cast_copy_into () ` to copy Self into it and returns the result .
&self
&self