From 125dff5a3b9c97b5dd5543873d6156ee31e7a66c Mon Sep 17 00:00:00 2001
From: Natalie Weizenbaum <nweiz@google.com>
Date: Mon, 3 Aug 2015 13:14:24 -0700
Subject: [PATCH] Add docs for new util methods.

R=kevmoo@google.com

Review URL: https://codereview.chromium.org//1259793005 .
---
 lib/src/utils.dart | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/src/utils.dart b/lib/src/utils.dart
index 2f4ff61b..e44e304d 100644
--- a/lib/src/utils.dart
+++ b/lib/src/utils.dart
@@ -323,6 +323,12 @@ Future maybeFirst(Stream stream) {
   return completer.future;
 }
 
+/// Returns a [CancelableFuture] that returns the next value of [queue] unless
+/// it's canceled.
+///
+/// If the future is canceled, [queue] is not moved forward at all. Note that
+/// it's not safe to call further methods on [queue] until this future has
+/// either completed or been canceled.
 CancelableFuture cancelableNext(StreamQueue queue) {
   var fork = queue.fork();
   var completer = new CancelableCompleter(() => fork.cancel(immediate: true));
@@ -333,6 +339,8 @@ CancelableFuture cancelableNext(StreamQueue queue) {
   return completer.future;
 }
 
+/// Returns the result of whichever of [futures] completes first, and cancels
+/// the others.
 Future race(Iterable<CancelableFuture> futures) {
   var completer = new Completer.sync();
   for (var future in futures) {
-- 
GitLab