NonEmptyArrayExt

Trait NonEmptyArrayExt 

Source
pub trait NonEmptyArrayExt<T> {
    // Required methods
    fn as_nonempty_slice(&self) -> NESlice<'_, T>;
    fn nonzero_len(&self) -> NonZeroUsize;
    fn into_nonempty_vec(self) -> NEVec<T>;
}
Expand description

Provides extension methods for non-empty arrays.

§Examples

Create a non-empty slice of an array:

assert_eq!(
    NESlice::try_from_slice(&[1, 2]),
    Some([1, 2].as_nonempty_slice())
);

Get the length of an array as a NonZeroUsize:

assert_eq!(NonZeroUsize::MIN, [1].nonzero_len());

Convert array into a non-empty vec:

assert_eq!(nev![4], [4].into_nonempty_vec());

Required Methods§

Source

fn as_nonempty_slice(&self) -> NESlice<'_, T>

Create a NESlice that borrows the contents of self.

Source

fn nonzero_len(&self) -> NonZeroUsize

Returns the length of this array as a NonZeroUsize.

Source

fn into_nonempty_vec(self) -> NEVec<T>

Moves self into a new crate::NEVec.

Implementations on Foreign Types§

Source§

impl<T> NonEmptyArrayExt<T> for [T; 1]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 2]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 3]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 4]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 5]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 6]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 7]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 8]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 9]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 10]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 11]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 12]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 13]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 14]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 15]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 16]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 17]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 18]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 19]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 20]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 21]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 22]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 23]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 24]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 25]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 26]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 27]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 28]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 29]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 30]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 31]

Source§

impl<T> NonEmptyArrayExt<T> for [T; 32]

Implementors§