Chromium Code Reviews| Index: sdk/lib/async/stream.dart |
| diff --git a/sdk/lib/async/stream.dart b/sdk/lib/async/stream.dart |
| index 7766c81a3b0a34fe880b97c6d4a00c779193239d..ae003e3e1bf75b7c163790338b46da22824076fc 100644 |
| --- a/sdk/lib/async/stream.dart |
| +++ b/sdk/lib/async/stream.dart |
| @@ -317,8 +317,8 @@ abstract class Stream<T> { |
| * If a broadcast stream is listened to more than once, each subscription |
| * will individually execute `map` for each event. |
| */ |
| - Stream map(convert(T event)) { |
| - return new _MapStream<T, dynamic>(this, convert); |
| + Stream/*<S>*/ map/*<S>*/(/*=S*/ convert(T event)) { |
| + return new _MapStream<T, dynamic/*=S*/>(this, convert); |
| } |
| /** |
| @@ -479,8 +479,8 @@ abstract class Stream<T> { |
| * If a broadcast stream is listened to more than once, each subscription |
| * will individually call `convert` and expand the events. |
| */ |
| - Stream expand(Iterable convert(T value)) { |
| - return new _ExpandStream<T, dynamic>(this, convert); |
| + Stream/*<S>*/ expand(Iterable/*<S>*/ convert(T value)) { |
|
Leaf
2016/01/13 00:52:12
I think this is missing the binding site. Should
|
| + return new _ExpandStream<T, dynamic/*=S*/>(this, convert); |
| } |
| /** |
| @@ -554,7 +554,9 @@ abstract class Stream<T> { |
| } |
| /** Reduces a sequence of values by repeatedly applying [combine]. */ |
| - Future fold(var initialValue, combine(var previous, T element)) { |
| + Future/*<S>*/ fold/*<S>*/(var/*=S*/ initialValue, |
| + /*=S*/ combine(var/*=S*/ previous, T element)) { |
| + |
| _Future result = new _Future(); |
| var value = initialValue; |
| StreamSubscription subscription; |