|
Reapply "Active stream subscriptions".
Makes subscriptions the active part of a stream, with the stream
itself being just an inert creator of subscriptions.
This changes the behavior of a "single subscription" stream to match
the documentation: After the subscription is canceled, you can't
resubscribe to the stream. Previously, you could do that, but it was
never documented or intended.
This also makes the stream of a StreamController not be paused while
before it's subscribed - it is always the subscription that is paused
or not, and while there is no subscription, the stream cannot be
paused. Previously the stream was set to paused until the first
subscription in order to prevent events from being lost. That is
handled independently of pauses now.
Adds StreamController.multiplex constructor. This name is tentative,
and likely to change. Its behavior may change as well. It currently
provides a new single-subscription stream each time its "stream"
getter is read, and you can subscribe to these.
Adds StreamIterator class that allows iterating over a stream's data
events using (async) "moveNext()" and "current", like a direct style
Iterator (sorry, it won't work in a for-in loop).
Committed: https://code.google.com/p/dart/source/detail?r=23237
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+1623 lines, -1558 lines) |
Patch |
 |
M |
pkg/mdv_observe/lib/src/observable_list.dart
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
pkg/scheduled_test/lib/scheduled_process.dart
|
View
|
|
6 chunks |
+8 lines, -9 lines |
0 comments
|
Download
|
 |
M |
pkg/scheduled_test/lib/src/mock_clock.dart
|
View
|
|
2 chunks |
+11 lines, -13 lines |
0 comments
|
Download
|
 |
M |
pkg/scheduled_test/lib/src/utils.dart
|
View
|
|
1 chunk |
+31 lines, -20 lines |
0 comments
|
Download
|
 |
M |
runtime/bin/socket_patch.dart
|
View
|
1
|
4 chunks |
+3 lines, -7 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/_internal/pub/lib/src/error_group.dart
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
sdk/lib/_internal/pub/test/error_group_test.dart
|
View
|
|
5 chunks |
+26 lines, -13 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/async/stream.dart
|
View
|
|
10 chunks |
+84 lines, -69 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/async/stream_controller.dart
|
View
|
|
3 chunks |
+302 lines, -45 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/async/stream_impl.dart
|
View
|
|
7 chunks |
+862 lines, -1013 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/async/stream_pipe.dart
|
View
|
|
13 chunks |
+59 lines, -131 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/io/http_impl.dart
|
View
|
|
1 chunk |
+3 lines, -1 line |
0 comments
|
Download
|
 |
M |
sdk/lib/io/http_parser.dart
|
View
|
|
1 chunk |
+0 lines, -8 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/io/mime_multipart_parser.dart
|
View
|
|
2 chunks |
+4 lines, -8 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/mdv_observe_impl/mdv_observe_impl.dart
|
View
|
|
3 chunks |
+8 lines, -8 lines |
0 comments
|
Download
|
 |
M |
sdk/lib/utf/utf_stream.dart
|
View
|
|
1 chunk |
+0 lines, -10 lines |
0 comments
|
Download
|
 |
M |
tests/lib/async/stream_controller_async_test.dart
|
View
|
|
3 chunks |
+56 lines, -49 lines |
0 comments
|
Download
|
 |
M |
tests/lib/async/stream_state_helper.dart
|
View
|
|
13 chunks |
+101 lines, -43 lines |
0 comments
|
Download
|
 |
M |
tests/lib/async/stream_state_nonzero_timer_test.dart
|
View
|
|
3 chunks |
+22 lines, -22 lines |
0 comments
|
Download
|
 |
M |
tests/lib/async/stream_state_test.dart
|
View
|
|
4 chunks |
+12 lines, -59 lines |
0 comments
|
Download
|
 |
M |
tests/standalone/io/http_multipart_test.dart
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
tests/standalone/io/http_parser_test.dart
|
View
|
|
2 chunks |
+20 lines, -14 lines |
0 comments
|
Download
|
 |
M |
tests/standalone/io/http_redirect_test.dart
|
View
|
|
1 chunk |
+5 lines, -9 lines |
0 comments
|
Download
|
 |
M |
tests/standalone/io/pipe_server_test.dart
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
tests/standalone/io/regress_8828_test.dart
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
tests/standalone/standalone.status
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
tools/dom/src/PathObserver.dart
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
Total messages: 3 (0 generated)
|