SwitchMapStreamTransformer<S, T> class
Converts each emitted item into a new Stream using the given mapper function. The newly created Stream will be be listened to and begin emitting items, and any previously created Stream will stop emitting.
The switchMap operator is similar to the flatMap and concatMap methods, but it only emits items from the most recently created Stream.
This can be useful when you only want the very latest state from asynchronous APIs, for example.
Example
Stream.fromIterable([4, 3, 2, 1])
.transform(SwitchMapStreamTransformer((i) =>
Stream.fromFuture(
Future.delayed(Duration(minutes: i), () => i))
.listen(print); // prints 1
- Inheritance
-
- Object
- StreamTransformerBase<
S, T> - SwitchMapStreamTransformer
Constructors
-
SwitchMapStreamTransformer(Stream<
T> mapper(S value)) -
Constructs a StreamTransformer which maps each event from the source Stream
using
mapper
.
Properties
Methods
-
bind(
Stream< S> stream) → Stream<T> -
Transforms the provided
stream
.override -
cast<
RS, RT> () → StreamTransformer< RS, RT> -
Provides a
StreamTransformer<RS, RT>
view of this stream transformer.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited