Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(243)

Side by Side Diff: test/dart_codegen/expect/async/stream_transformers.dart

Issue 1038213003: Downward inference (Closed) Base URL: git@github.com:dart-lang/dart-dev-compiler.git@master
Patch Set: Rebase Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 part of dart.async; 1 part of dart.async;
2 class _EventSinkWrapper<T> implements EventSink<T> {_EventSink _sink; 2 class _EventSinkWrapper<T> implements EventSink<T> {_EventSink _sink;
3 _EventSinkWrapper(this._sink); 3 _EventSinkWrapper(this._sink);
4 void add(T data) { 4 void add(T data) {
5 _sink._add(data); 5 _sink._add(data);
6 } 6 }
7 void addError(error, [StackTrace stackTrace]) { 7 void addError(error, [StackTrace stackTrace]) {
8 _sink._addError(error, stackTrace); 8 _sink._addError(error, stackTrace);
9 } 9 }
10 void close() { 10 void close() {
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 Stream<T> bind(Stream<S> stream) => new _BoundSinkStream<S, T>(stream, _sinkMap per); 88 Stream<T> bind(Stream<S> stream) => new _BoundSinkStream<S, T>(stream, _sinkMap per);
89 } 89 }
90 class _BoundSinkStream<S, T> extends Stream<T> {final _SinkMapper<S, T> _sinkMa pper; 90 class _BoundSinkStream<S, T> extends Stream<T> {final _SinkMapper<S, T> _sinkMa pper;
91 final Stream<S> _stream; 91 final Stream<S> _stream;
92 bool get isBroadcast => _stream.isBroadcast; 92 bool get isBroadcast => _stream.isBroadcast;
93 _BoundSinkStream(this._stream, this._sinkMapper); 93 _BoundSinkStream(this._stream, this._sinkMapper);
94 StreamSubscription<T> listen(void onData(T event), { 94 StreamSubscription<T> listen(void onData(T event), {
95 Function onError, void onDone(), bool cancelOnError} 95 Function onError, void onDone(), bool cancelOnError}
96 ) { 96 ) {
97 cancelOnError = identical(true, cancelOnError); 97 cancelOnError = identical(true, cancelOnError);
98 StreamSubscription<T> subscription = ((__x105) => DEVC$RT.cast(__x105, DEVC$RT. type((_SinkTransformerStreamSubscription<dynamic, dynamic> _) { 98 StreamSubscription<T> subscription = new _SinkTransformerStreamSubscription(_st ream, DEVC$RT.wrap((EventSink<S> f(EventSink<T> __u93)) {
99 }
100 ), DEVC$RT.type((StreamSubscription<T> _) {
101 }
102 ), "InferableAllocation", """line 186, column 42 of dart:async/stream_transforme rs.dart: """, __x105 is StreamSubscription<T>, false))(new _SinkTransformerStrea mSubscription(_stream, DEVC$RT.wrap((EventSink<S> f(EventSink<T> __u106)) {
103 EventSink<S> c(EventSink<T> x0) => f(DEVC$RT.cast(x0, DEVC$RT.type((EventSink<dy namic> _) { 99 EventSink<S> c(EventSink<T> x0) => f(DEVC$RT.cast(x0, DEVC$RT.type((EventSink<dy namic> _) {
104 } 100 }
105 ), DEVC$RT.type((EventSink<T> _) { 101 ), DEVC$RT.type((EventSink<T> _) {
106 } 102 }
107 ), "CastParam", """line 187, column 18 of dart:async/stream_transformers.dart: " "", x0 is EventSink<T>, false)); 103 ), "CastParam", """line 187, column 18 of dart:async/stream_transformers.dart: " "", x0 is EventSink<T>, false));
108 return f == null ? null : c; 104 return f == null ? null : c;
109 } 105 }
110 , _sinkMapper, DEVC$RT.type((__t109<T, S> _) { 106 , _sinkMapper, DEVC$RT.type((__t96<T, S> _) {
111 } 107 }
112 ), __t107, "Wrap", """line 187, column 18 of dart:async/stream_transformers.dart : """, _sinkMapper is __t107), onData, onError, onDone, cancelOnError)); 108 ), __t94, "Wrap", """line 187, column 18 of dart:async/stream_transformers.dart: """, _sinkMapper is __t94), onData, onError, onDone, cancelOnError);
113 return subscription; 109 return subscription;
114 } 110 }
115 } 111 }
116 typedef void _TransformDataHandler<S, T>(S data, EventSink<T> sink); 112 typedef void _TransformDataHandler<S, T>(S data, EventSink<T> sink);
117 typedef void _TransformErrorHandler<T>(Object error, StackTrace stackTrace, Eve ntSink<T> sink); 113 typedef void _TransformErrorHandler<T>(Object error, StackTrace stackTrace, Eve ntSink<T> sink);
118 typedef void _TransformDoneHandler<T>(EventSink<T> sink); 114 typedef void _TransformDoneHandler<T>(EventSink<T> sink);
119 class _HandlerEventSink<S, T> implements EventSink<S> {final _TransformDataHand ler<S, T> _handleData; 115 class _HandlerEventSink<S, T> implements EventSink<S> {final _TransformDataHand ler<S, T> _handleData;
120 final _TransformErrorHandler<T> _handleError; 116 final _TransformErrorHandler<T> _handleError;
121 final _TransformDoneHandler<T> _handleDone; 117 final _TransformDoneHandler<T> _handleDone;
122 final EventSink<T> _sink; 118 final EventSink<T> _sink;
123 _HandlerEventSink(this._handleData, this._handleError, this._handleDone, this._ sink); 119 _HandlerEventSink(this._handleData, this._handleError, this._handleDone, this._ sink);
124 void add(S data) => _handleData(data, _sink); 120 void add(S data) => _handleData(data, _sink);
125 void addError(Object error, [StackTrace stackTrace]) => _handleError(error, sta ckTrace, _sink); 121 void addError(Object error, [StackTrace stackTrace]) => _handleError(error, sta ckTrace, _sink);
126 void close() => _handleDone(_sink); 122 void close() => _handleDone(_sink);
127 } 123 }
128 class _StreamHandlerTransformer<S, T> extends _StreamSinkTransformer<S, T> {_St reamHandlerTransformer({ 124 class _StreamHandlerTransformer<S, T> extends _StreamSinkTransformer<S, T> {_St reamHandlerTransformer({
129 void handleData(S data, EventSink<T> sink), void handleError(Object error, Stack Trace stackTrace, EventSink<T> sink), void handleDone(EventSink<T> sink)} 125 void handleData(S data, EventSink<T> sink), void handleError(Object error, Stack Trace stackTrace, EventSink<T> sink), void handleDone(EventSink<T> sink)}
130 ) : super(((__x117) => DEVC$RT.wrap((dynamic f(EventSink<T> __u112)) { 126 ) : super(((__x104) => DEVC$RT.wrap((dynamic f(EventSink<T> __u99)) {
131 dynamic c(EventSink<T> x0) => ((__x111) => DEVC$RT.cast(__x111, dynamic, DEVC$RT .type((EventSink<S> _) { 127 dynamic c(EventSink<T> x0) => ((__x98) => DEVC$RT.cast(__x98, dynamic, DEVC$RT.t ype((EventSink<S> _) {
132 } 128 }
133 ), "CastResult", """line 233, column 15 of dart:async/stream_transformers.dart: """, __x111 is EventSink<S>, false))(f(x0)); 129 ), "CastResult", """line 233, column 15 of dart:async/stream_transformers.dart: """, __x98 is EventSink<S>, false))(f(x0));
134 return f == null ? null : c; 130 return f == null ? null : c;
135 } 131 }
136 , __x117, DEVC$RT.type((__t115<T> _) { 132 , __x104, DEVC$RT.type((__t102<T> _) {
137 } 133 }
138 ), DEVC$RT.type((__t113<T, S> _) { 134 ), DEVC$RT.type((__t100<T, S> _) {
139 } 135 }
140 ), "WrapLiteral", """line 233, column 15 of dart:async/stream_transformers.dart: """, __x117 is __t113<T, S>))((EventSink<T> outputSink) { 136 ), "WrapLiteral", """line 233, column 15 of dart:async/stream_transformers.dart: """, __x104 is __t100<T, S>))((EventSink<T> outputSink) {
141 if (handleData == null) handleData = DEVC$RT.wrap((void f(dynamic __u118, EventS ink<dynamic> __u119)) { 137 if (handleData == null) handleData = DEVC$RT.wrap((void f(dynamic __u105, EventS ink<dynamic> __u106)) {
142 void c(dynamic x0, EventSink<dynamic> x1) => f(x0, x1); 138 void c(dynamic x0, EventSink<dynamic> x1) => f(x0, x1);
143 return f == null ? null : c; 139 return f == null ? null : c;
144 } 140 }
145 , _defaultHandleData, __t123, DEVC$RT.type((__t120<S, T> _) { 141 , _defaultHandleData, __t110, DEVC$RT.type((__t107<S, T> _) {
146 } 142 }
147 ), "Wrap", """line 234, column 48 of dart:async/stream_transformers.dart: """, _ defaultHandleData is __t120<S, T>); 143 ), "Wrap", """line 234, column 48 of dart:async/stream_transformers.dart: """, _ defaultHandleData is __t107<S, T>);
148 if (handleError == null) handleError = DEVC$RT.wrap((void f(dynamic __u126, Sta ckTrace __u127, EventSink<dynamic> __u128)) { 144 if (handleError == null) handleError = DEVC$RT.wrap((void f(dynamic __u113, Sta ckTrace __u114, EventSink<dynamic> __u115)) {
149 void c(dynamic x0, StackTrace x1, EventSink<dynamic> x2) => f(x0, x1, x2); 145 void c(dynamic x0, StackTrace x1, EventSink<dynamic> x2) => f(x0, x1, x2);
150 return f == null ? null : c; 146 return f == null ? null : c;
151 } 147 }
152 , _defaultHandleError, __t133, DEVC$RT.type((__t129<T> _) { 148 , _defaultHandleError, __t120, DEVC$RT.type((__t116<T> _) {
153 } 149 }
154 ), "Wrap", """line 235, column 50 of dart:async/stream_transformers.dart: """, _ defaultHandleError is __t129<T>); 150 ), "Wrap", """line 235, column 50 of dart:async/stream_transformers.dart: """, _ defaultHandleError is __t116<T>);
155 if (handleDone == null) handleDone = _defaultHandleDone; 151 if (handleDone == null) handleDone = _defaultHandleDone;
156 return new _HandlerEventSink<S, T>(handleData, handleError, handleDone, outputS ink); 152 return new _HandlerEventSink<S, T>(handleData, handleError, handleDone, outputS ink);
157 } 153 }
158 )); 154 ));
159 Stream<T> bind(Stream<S> stream) { 155 Stream<T> bind(Stream<S> stream) {
160 return super.bind(stream); 156 return super.bind(stream);
161 } 157 }
162 static void _defaultHandleData(var data, EventSink sink) { 158 static void _defaultHandleData(var data, EventSink sink) {
163 sink.add(data); 159 sink.add(data);
164 } 160 }
(...skipping 16 matching lines...) Expand all
181 Function onError, void onDone(), bool cancelOnError} 177 Function onError, void onDone(), bool cancelOnError}
182 ) { 178 ) {
183 cancelOnError = identical(true, cancelOnError); 179 cancelOnError = identical(true, cancelOnError);
184 StreamSubscription<T> result = _transformer(_stream, cancelOnError); 180 StreamSubscription<T> result = _transformer(_stream, cancelOnError);
185 result.onData(onData); 181 result.onData(onData);
186 result.onError(onError); 182 result.onError(onError);
187 result.onDone(onDone); 183 result.onDone(onDone);
188 return result; 184 return result;
189 } 185 }
190 } 186 }
191 typedef EventSink<dynamic> __t107(EventSink<dynamic> __u108); 187 typedef EventSink<dynamic> __t94(EventSink<dynamic> __u95);
192 typedef EventSink<S> __t109<T, S>(EventSink<T> __u110); 188 typedef EventSink<S> __t96<T, S>(EventSink<T> __u97);
193 typedef EventSink<S> __t113<T, S>(EventSink<T> __u114); 189 typedef EventSink<S> __t100<T, S>(EventSink<T> __u101);
194 typedef dynamic __t115<T>(EventSink<T> __u116); 190 typedef dynamic __t102<T>(EventSink<T> __u103);
195 typedef void __t120<S, T>(S __u121, EventSink<T> __u122); 191 typedef void __t107<S, T>(S __u108, EventSink<T> __u109);
196 typedef void __t123(dynamic __u124, EventSink<dynamic> __u125); 192 typedef void __t110(dynamic __u111, EventSink<dynamic> __u112);
197 typedef void __t129<T>(Object __u130, StackTrace __u131, EventSink<T> __u132); 193 typedef void __t116<T>(Object __u117, StackTrace __u118, EventSink<T> __u119);
198 typedef void __t133(dynamic __u134, StackTrace __u135, EventSink<dynamic> __u13 6); 194 typedef void __t120(dynamic __u121, StackTrace __u122, EventSink<dynamic> __u12 3);
OLDNEW
« no previous file with comments | « test/dart_codegen/expect/async/stream_pipe.dart ('k') | test/dart_codegen/expect/async/timer.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698