pub trait SliceFlatExt<T> {
    fn flat(&self) -> &[T]Notable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8];
fn flat_mut(&mut self) -> &mut [T]Notable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]; }
Expand description

Permits viewing a slice of arrays as a flat slice.


Will panic if the new length exceeds usize::MAX. (in practice, this can only happen with zero-sized types)


The methods are available on &[[T; n]] and &mut [[T; n]] for all T and n. Of course, they are also available on Vec<[T; n]> and any other type that derefs or unsizes to [[T; n]].

&[[T; 0]] does support being flattened into an empty slice, however, please do mind that the inverse operation SliceNestExt::nest will panic (as it cannot possibly recover the original length of the slice).


The existence of this trait is an implementation detail. Future versions may split it up, merge or rename it. Therefore, please do NOT use this trait as a generic bound in your code.

(Prefer [V] where V: IsSliceomorphic<Element=T> instead)

Required methods

View &[[T; n]] as &[T].

View &mut [[T; n]] as &mut [T]

Implementations on Foreign Types