Fix strong mode warnings and add type-conversion static functions.
Add typed wrapper functions to delegate classes.

These mirror the methods in the the collection package, and serve a
similar purpose of safely casting generic objects when the user is
confident that the actual object's values are more specific than the
static type.

R=floitsch@google.com, lrn@google.com

Review URL: https://codereview.chromium.org//1870543004 .
20 files changed
tree: db2a7688fc0f565aefbee9c55966dda96ffd5460
  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.