Stream extension with new operators, this will grow over the time.
Feel free to contribute!
- [] Better readme
- [] RustDoc
- [] Further operators
Debounce a stream until it is sattled over a given duration.
ReceiverStream::new(self.input)
.debounce(Duration::from_millis(80)),
Filters events, similar to the last value.
The initial value is always emitted.
ReceiverStream::new(self.input)
.distinct_until_changed(),
Reactive composing of streams.
switch_map(ReceiverStream::new(keyboard), move |value| {
if value == 'k' {
Some(ReceiverStream::new(gamepad))
} else {
Some(ReceiverStream::new(joystick))
}
});
Collects a value from all streams and switch to a live mode. Every new combination will be emitted from now on.
switch_map(ReceiverStream::new(keyboard), move |value| {
if value == 'k' {
Some(ReceiverStream::new(gamepad))
} else {
Some(ReceiverStream::new(joystick))
}
});