pub trait TryIterator { type Item; type Error; // Required method fn try_next(&mut self) -> Result<Option<Self::Item>, Self::Error>; }