use crate::AsArray;
#[cfg(not(feature = "alloc"))]
pub const trait IntoArray: ~const AsArray
{
fn into_array(self) -> [Self::Elem; Self::LENGTH];
}
#[cfg(feature = "alloc")]
pub const trait IntoArray: ~const AsArray + slice_trait::IntoBoxedSlice
{
fn into_array(self) -> [Self::Elem; Self::LENGTH];
}
impl<T, const LENGTH: usize> const IntoArray for [T; LENGTH]
{
fn into_array(self) -> [Self::Elem; Self::LENGTH]
{
let array = unsafe {core::mem::transmute_copy(&self)};
core::mem::forget(self);
array
}
}