pub trait UnCons<H> {
type NextIt;
type Tail: UnCons<Self::NextIt>;
// Required method
fn uncons(self) -> (Option<H>, Self::Tail);
}pub trait UnCons<H> {
type NextIt;
type Tail: UnCons<Self::NextIt>;
// Required method
fn uncons(self) -> (Option<H>, Self::Tail);
}