Trait SortedIterator

Source
pub trait SortedIterator: Iterator + Sized {
    // Provided methods
    fn union<J>(self, other: J) -> Union<Self, J> 
       where J: SortedIterator<Item = Self::Item> { ... }
    fn intersection<J>(self, other: J) -> Intersection<Self, J> 
       where J: SortedIterator<Item = Self::Item> { ... }
    fn difference<J>(self, other: J) -> Difference<Self, J> 
       where J: SortedIterator<Item = Self::Item> { ... }
    fn symmetric_difference<J>(self, other: J) -> SymmetricDifference<Self, J> 
       where J: SortedIterator<Item = Self::Item> { ... }
    fn pairs(self) -> Pairs<Self>  { ... }
    fn is_disjoint<J>(self, other: J) -> bool
       where J: SortedIterator<Item = Self::Item>,
             Self::Item: Ord { ... }
    fn is_subset<J>(self, other: J) -> bool
       where J: SortedIterator<Item = Self::Item>,
             Self::Item: Ord { ... }
    fn is_superset<J>(self, other: J) -> bool
       where J: SortedIterator<Item = Self::Item>,
             Self::Item: Ord { ... }
}
Expand description

set operations for iterators where the items are sorted according to the natural order

Provided Methods§

Source

fn union<J>(self, other: J) -> Union<Self, J>
where J: SortedIterator<Item = Self::Item>,

Visits the values representing the union, i.e., all the values in self or other, without duplicates.

Source

fn intersection<J>(self, other: J) -> Intersection<Self, J>
where J: SortedIterator<Item = Self::Item>,

Visits the values representing the intersection, i.e., the values that are both in self and other.

Source

fn difference<J>(self, other: J) -> Difference<Self, J>
where J: SortedIterator<Item = Self::Item>,

Visits the values representing the difference, i.e., the values that are in self but not in other.

Source

fn symmetric_difference<J>(self, other: J) -> SymmetricDifference<Self, J>
where J: SortedIterator<Item = Self::Item>,

Visits the values representing the symmetric difference, i.e., the values that are in self or in other but not in both.

Source

fn pairs(self) -> Pairs<Self>

Creates an iterator that pairs each element of self with (). This transforms a SortedIterator into a SortedPairIterator.

Source

fn is_disjoint<J>(self, other: J) -> bool
where J: SortedIterator<Item = Self::Item>, Self::Item: Ord,

Returns true if self has no elements in common with other. This is equivalent to checking for an empty intersection.

Source

fn is_subset<J>(self, other: J) -> bool
where J: SortedIterator<Item = Self::Item>, Self::Item: Ord,

Returns true if this sorted iterator is a subset of another, i.e., other contains at least all the values in self.

Source

fn is_superset<J>(self, other: J) -> bool
where J: SortedIterator<Item = Self::Item>, Self::Item: Ord,

Returns true if this sorted iterator is a superset of another, i.e., self contains at least all the values in other.

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§