Trait iterator_markers::DescendingIterator
[−]
[src]
pub unsafe trait DescendingIterator: Iterator where Self::Item: PartialOrd { }
Marker trait for iterators that return items in a sorted desscending order.
It does not guarantee uniqueness, but equal items must come straight after each other.
Use I: UniqueIterator+DescendingIterator
if you need both.
The trait is unsafe so consumers can rely on it.
It is a logic error to implement both AscendingIterator
and DescendingIterator
for the same type.
Examples:
let _ = (1..10).rev();
Implementors
impl<T: PartialOrd> DescendingIterator for Once<T>
impl<T: PartialOrd> DescendingIterator for Empty<T>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator> DescendingIterator for Peekable<I>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator> DescendingIterator for Skip<I>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator> DescendingIterator for Take<I>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator> DescendingIterator for Fuse<I>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator, F: FnMut(&T) -> bool> DescendingIterator for Filter<I, F>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator, F: FnMut(&T) -> bool> DescendingIterator for SkipWhile<I, F>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator, F: FnMut(&T) -> bool> DescendingIterator for TakeWhile<I, F>
impl<I: DoubleEndedIterator + AscendingIterator> DescendingIterator for Rev<I> where I::Item: PartialOrd
impl<'a, T: 'a + Clone + PartialOrd, I: Iterator<Item=&'a T> + DescendingIterator> DescendingIterator for Cloned<I>
impl<T: PartialOrd, I: Iterator<Item=T> + DescendingIterator, F: FnMut(&T)> DescendingIterator for Inspect<I, F>
impl<TA, TB, IA, IB> DescendingIterator for Zip<IA, IB> where TA: PartialOrd,
IA: Iterator<Item=TA> + DescendingIterator + UniqueIterator,
TB: PartialOrd,
IB: Iterator<Item=TB>