[]Struct recrypt::nonemptyvec::NonEmptyVec

pub struct NonEmptyVec<T> { /* fields omitted */ }

A simple-minded NonEmptyVec implementation


impl<T> NonEmptyVec<T> where
    T: Clone

pub fn new_first(first: T) -> Self

pub fn new(first: T, rest: Vec<T>) -> Self

pub fn new_last(first_v: &[T], tail: NonEmptyVec<T>) -> Self

pub fn first(&self) -> &T

pub fn rest(&self) -> &Vec<T>

pub fn to_vec(&self) -> Vec<T>

pub fn try_from(v: &[T]) -> Result<NonEmptyVec<T>, NonEmptyVecError>

pub fn concat(&self, b: &NonEmptyVec<T>) -> NonEmptyVec<T>

pub fn last(&self) -> &T

pub fn len(&self) -> usize

pub fn as_vec(self) -> Vec<T>

Trait Implementations

impl<T: Hashable + Clone> Hashable for NonEmptyVec<T>

impl<T: PartialEq> PartialEq<NonEmptyVec<T>> for NonEmptyVec<T>

impl<T: Clone> Clone for NonEmptyVec<T>

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

impl<T: Eq> Eq for NonEmptyVec<T>

impl<T> Into<Vec<T>> for NonEmptyVec<T>

impl<T: Debug> Debug for NonEmptyVec<T>

Auto Trait Implementations

impl<T> Send for NonEmptyVec<T> where
    T: Send

impl<T> Sync for NonEmptyVec<T> where
    T: Sync

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 

impl<T, U> TryFrom for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized

impl<T> BorrowMut for T where
    T: ?Sized

impl<T, U> TryInto for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> Same for T

type Output = T

Should always be Self