Skip to content

Instantly share code, notes, and snippets.

@fengyfei
Created May 22, 2019 04:50
Show Gist options
  • Save fengyfei/03dc085e5efb610e57d929b69bd65baf to your computer and use it in GitHub Desktop.
Save fengyfei/03dc085e5efb610e57d929b69bd65baf to your computer and use it in GitHub Desktop.
[dart:async] StreamTransformer Basic Usage
import 'dart:async';
main() {
StreamTransformer transformer = StreamTransformer<num, num>.fromHandlers(
handleData: (num val, EventSink sink) {
sink.add(val + 1);
}
);
StreamController controller = StreamController<num>();
Stream transformed = controller.stream.transform(transformer);
transformed.listen((val) {
print('Transformed event received: $val');
}, onDone: () {
print('Transformed stream done');
});
for (var i = 0; i < 10; i++) {
controller.sink.add(i);
}
controller.close();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment