pub trait Item<'a, T: ?Sized + 'a> { type Iter: DoubleEndedIterator<Item = &'a T>; // Required method fn iter(&'a self) -> Self::Iter; }