Trait std::iter::RandomAccessIteratorUnstable
[-]
[+]
[src]
pub trait RandomAccessIterator: Iterator {
fn indexable(&self) -> usize;
fn idx(&mut self, index: usize) -> Option<<Self as Iterator>::Item>;
}An object implementing random access indexing by uint
A RandomAccessIterator should be either infinite or a DoubleEndedIterator.
Calling next() or next_back() on a RandomAccessIterator
reduces the indexable range accordingly. That is, it.idx(1) will become it.idx(0)
after it.next() is called.
Required Methods
fn indexable(&self) -> usize
Return the number of indexable elements. At most std::uint::MAX
elements are indexable, even if the iterator represents a longer range.
fn idx(&mut self, index: usize) -> Option<<Self as Iterator>::Item>
Return an element at an index, or None if the index is out of bounds
Implementors
impl<I> RandomAccessIterator for Rev<I>impl<I> RandomAccessIterator for Cycle<I>impl<T, A, B> RandomAccessIterator for Chain<A, B>impl<T, U, A, B> RandomAccessIterator for Zip<A, B>impl<A, B, I, F> RandomAccessIterator for Map<A, B, I, F>impl<I> RandomAccessIterator for Enumerate<I>impl<I> RandomAccessIterator for Skip<I>impl<I> RandomAccessIterator for Take<I>impl<I> RandomAccessIterator for Fuse<I>impl<A, I, F> RandomAccessIterator for Inspect<A, I, F>impl<A: Clone> RandomAccessIterator for Repeat<A>impl<'a, T> RandomAccessIterator for Iter<'a, T>impl<'a, T> RandomAccessIterator for Chunks<'a, T>impl<'a> RandomAccessIterator for Iter<'a>impl<'a, T> RandomAccessIterator for Iter<'a, T>