commit | 312d39641225b64b275e57d167b57a87b335654a | [log] [tgz] |
---|---|---|
author | Natalie Weizenbaum <nweiz@google.com> | Wed Jul 15 15:18:36 2015 -0700 |
committer | Natalie Weizenbaum <nweiz@google.com> | Wed Jul 15 15:18:36 2015 -0700 |
tree | 6055a7600b092c72cb6e6b990f24b0e0133b7d76 | |
parent | 5f908468abc0ecd10224d47033c3cb95a5c33b44 [diff] |
Add StreamQueue.fork and ForkableStream. StramQueue.fork is a very useful operation for creating complex and composable user-defined operations over stream queues. It allows arbitrary lookahead to be performed without modifying the semantics of the original stream, providing for higher-order operations like "check for this sequence of values or, if they don't exist, this other distinct sequence". Review URL: https://codereview.chromium.org//1241723003 .
Contains tools to work with asynchronous computations.
The package contains Stream
and Future
related functionality, as well as sub-libraries with different utilities.
The “stream_zip.dart” sub-library contains functionality to combine several streams of events into a single stream of tuples of events.
The “result.dart” sub-library 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.
This package is unrelated to the discontinued async
package with version 0.1.7.
Please file feature requests and bugs at the issue tracker.