This Rust crate provides EternalIterator trait, which promises that the iterator
iterates forever.
letmut it =core::iter::repeat(123_i32).map(|i|i *2).enumerate().skip(5).step_by(2).zip(core::iter::once(3).chain(10..));assert_eq!(it.next_eternal(),((5,246),3));assert_eq!(it.next_eternal(),((7,246),10));assert_eq!(it.next(),Some(((9,246),11)));assert_eq!(it.next_eternal(),((11,246),12));