pub trait DistinctExt<T: CellValue + Eq + Hash, S: Seedness>: Pipeline<T, S> {
// Required method
fn distinct(self) -> impl Materialize<T, S>;
}Required Methods§
Sourcefn distinct(self) -> impl Materialize<T, S>
fn distinct(self) -> impl Materialize<T, S>
Filter out values that have already been emitted (by Hash/Eq).
§Example
use hyphae::{Cell, DistinctExt, Materialize, Mutable};
let source = Cell::new(0);
let distinct = source.clone().distinct().materialize();
source.set(1);
source.set(2);
source.set(1); // blocked - already seen
source.set(3);
source.set(2); // blocked - already seenDyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".