Add type-asserting wrappers for transformers.
Add APIs for asserting the types of transformers.

I thought about adding these to Delegating*Transformer classes, but
those delegates don't really make any sense at all on their own, so I
found other places instead.

R=lrn@google.com

Review URL: https://codereview.chromium.org//1947923003 .
6 files changed
tree: b5c87fc6e24bce1d8b8adf437d7dcb75fe8295c2
  1. .analysis_options
  2. .gitignore
  3. .test_config
  4. AUTHORS
  5. CHANGELOG.md
  6. CONTRIBUTING.md
  7. LICENSE
  8. README.md
  9. codereview.settings
  10. lib/
  11. pubspec.yaml
  12. test/
README.md

Contains utility classes in the style of dart:async to work with asynchronous computations.

Zipping streams

The StreamZip class can combine several streams of events into a single stream of tuples of events.

Results

The package introduces a Result class that can hold either a value or an error. It allows capturing an asynchronous computation which can give either a value or an error, into an asynchronous computation that always gives a Result value, where errors can be treated as data. It also allows releasing the Result back into an asynchronous computation.