Trait IterVecIterExt

Source
pub trait IterVecIterExt: Iterator + Sized {
    // Provided method
    fn vec_iter(self) -> VecIter<Self>  { ... }
}
Expand description

Lazy collection of iterated element, implementing iterators for random access

§Examples

use vec_iter::IterVecIterExt;

let mut iter = [0, 1, 2, 3, 4].into_iter().vec_iter();

assert_eq!(iter.next(), Some(0));
assert_eq!(*iter, [0]);
assert_eq!(iter.nth(1), Some(2));
assert_eq!(*iter, [0, 1, 2]);
assert_eq!(iter[1], 1);
assert_eq!(iter.get_req(3), Some(&3));
assert_eq!(*iter, [0, 1, 2, 3]);
assert_eq!(iter.into_all_collected(), [0, 1, 2, 3, 4]);

Provided Methods§

Source

fn vec_iter(self) -> VecIter<Self>

Create a VecIter

§Examples
let mut iter = [0, 1, 2, 3, 4].into_iter().vec_iter();

assert_eq!(iter.next(), Some(0));
assert_eq!(*iter, [0]);
assert_eq!(iter.nth(1), Some(2));
assert_eq!(*iter, [0, 1, 2]);
assert_eq!(iter.get_req(3), Some(&3));
assert_eq!(*iter, [0, 1, 2, 3]);
assert_eq!(iter.into_all_collected(), [0, 1, 2, 3, 4]);

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§