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

Side by Side Diff: lib/runtime/dart/convert.js

Issue 1117793002: add checks needed for covariant generics, and List<E> (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 7 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 var convert; 1 var convert;
2 (function(exports) { 2 (function(exports) {
3 'use strict'; 3 'use strict';
4 let ASCII = dart.const(new AsciiCodec()); 4 let ASCII = dart.const(new AsciiCodec());
5 let _ASCII_MASK = 127; 5 let _ASCII_MASK = 127;
6 let _allowInvalid = Symbol('_allowInvalid'); 6 let _allowInvalid = Symbol('_allowInvalid');
7 let Codec$ = dart.generic(function(S, T) { 7 let Codec$ = dart.generic(function(S, T) {
8 class Codec extends core.Object { 8 class Codec extends core.Object {
9 Codec() { 9 Codec() {
10 } 10 }
11 encode(input) { 11 encode(input) {
12 dart.as(input, S);
12 return this.encoder.convert(input); 13 return this.encoder.convert(input);
13 } 14 }
14 decode(encoded) { 15 decode(encoded) {
16 dart.as(encoded, T);
15 return this.decoder.convert(encoded); 17 return this.decoder.convert(encoded);
16 } 18 }
17 fuse(other) { 19 fuse(other) {
18 return new (_FusedCodec$(S, T, dart.dynamic))(this, other); 20 return new (_FusedCodec$(S, T, dart.dynamic))(this, other);
19 } 21 }
20 get inverted() { 22 get inverted() {
21 return new (_InvertedCodec$(T, S))(this); 23 return new (_InvertedCodec$(T, S))(this);
22 } 24 }
23 } 25 }
24 return Codec; 26 return Codec;
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after
373 let _ChunkedConversionCallback = _ChunkedConversionCallback$(); 375 let _ChunkedConversionCallback = _ChunkedConversionCallback$();
374 let _accumulated = Symbol('_accumulated'); 376 let _accumulated = Symbol('_accumulated');
375 let _SimpleCallbackSink$ = dart.generic(function(T) { 377 let _SimpleCallbackSink$ = dart.generic(function(T) {
376 class _SimpleCallbackSink extends ChunkedConversionSink$(T) { 378 class _SimpleCallbackSink extends ChunkedConversionSink$(T) {
377 _SimpleCallbackSink(callback) { 379 _SimpleCallbackSink(callback) {
378 this[_accumulated] = dart.setType([], core.List$(T)); 380 this[_accumulated] = dart.setType([], core.List$(T));
379 this[_callback] = callback; 381 this[_callback] = callback;
380 super.ChunkedConversionSink(); 382 super.ChunkedConversionSink();
381 } 383 }
382 add(chunk) { 384 add(chunk) {
385 dart.as(chunk, T);
383 this[_accumulated][core.$add](chunk); 386 this[_accumulated][core.$add](chunk);
384 } 387 }
385 close() { 388 close() {
386 this[_callback](this[_accumulated]); 389 this[_callback](this[_accumulated]);
387 } 390 }
388 } 391 }
389 return _SimpleCallbackSink; 392 return _SimpleCallbackSink;
390 }); 393 });
391 let _SimpleCallbackSink = _SimpleCallbackSink$(); 394 let _SimpleCallbackSink = _SimpleCallbackSink$();
392 let _EventSinkAdapter$ = dart.generic(function(T) { 395 let _EventSinkAdapter$ = dart.generic(function(T) {
393 class _EventSinkAdapter extends core.Object { 396 class _EventSinkAdapter extends core.Object {
394 _EventSinkAdapter(sink) { 397 _EventSinkAdapter(sink) {
395 this[_sink] = sink; 398 this[_sink] = sink;
396 } 399 }
397 add(data) { 400 add(data) {
401 dart.as(data, T);
398 return this[_sink].add(data); 402 return this[_sink].add(data);
399 } 403 }
400 close() { 404 close() {
401 return this[_sink].close(); 405 return this[_sink].close();
402 } 406 }
403 } 407 }
404 _EventSinkAdapter[dart.implements] = () => [ChunkedConversionSink$(T)]; 408 _EventSinkAdapter[dart.implements] = () => [ChunkedConversionSink$(T)];
405 return _EventSinkAdapter; 409 return _EventSinkAdapter;
406 }); 410 });
407 let _EventSinkAdapter = _EventSinkAdapter$(); 411 let _EventSinkAdapter = _EventSinkAdapter$();
408 let _eventSink = Symbol('_eventSink'); 412 let _eventSink = Symbol('_eventSink');
409 let _chunkedSink = Symbol('_chunkedSink'); 413 let _chunkedSink = Symbol('_chunkedSink');
410 let _ConverterStreamEventSink$ = dart.generic(function(S, T) { 414 let _ConverterStreamEventSink$ = dart.generic(function(S, T) {
411 class _ConverterStreamEventSink extends core.Object { 415 class _ConverterStreamEventSink extends core.Object {
412 _ConverterStreamEventSink(converter, sink) { 416 _ConverterStreamEventSink(converter, sink) {
413 this[_eventSink] = sink; 417 this[_eventSink] = sink;
414 this[_chunkedSink] = converter.startChunkedConversion(sink); 418 this[_chunkedSink] = converter.startChunkedConversion(sink);
415 } 419 }
416 add(o) { 420 add(o) {
421 dart.as(o, S);
417 return this[_chunkedSink].add(o); 422 return this[_chunkedSink].add(o);
418 } 423 }
419 addError(error, stackTrace) { 424 addError(error, stackTrace) {
420 if (stackTrace === void 0) 425 if (stackTrace === void 0)
421 stackTrace = null; 426 stackTrace = null;
422 this[_eventSink].addError(error, stackTrace); 427 this[_eventSink].addError(error, stackTrace);
423 } 428 }
424 close() { 429 close() {
425 return this[_chunkedSink].close(); 430 return this[_chunkedSink].close();
426 } 431 }
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
469 }); 474 });
470 let _InvertedCodec = _InvertedCodec$(); 475 let _InvertedCodec = _InvertedCodec$();
471 let _FusedConverter$ = dart.generic(function(S, M, T) { 476 let _FusedConverter$ = dart.generic(function(S, M, T) {
472 class _FusedConverter extends Converter$(S, T) { 477 class _FusedConverter extends Converter$(S, T) {
473 _FusedConverter(first, second) { 478 _FusedConverter(first, second) {
474 this[_first] = first; 479 this[_first] = first;
475 this[_second] = second; 480 this[_second] = second;
476 super.Converter(); 481 super.Converter();
477 } 482 }
478 convert(input) { 483 convert(input) {
484 dart.as(input, S);
479 return dart.as(this[_second].convert(this[_first].convert(input)), T); 485 return dart.as(this[_second].convert(this[_first].convert(input)), T);
480 } 486 }
481 startChunkedConversion(sink) { 487 startChunkedConversion(sink) {
482 return this[_first].startChunkedConversion(this[_second].startChunkedCon version(sink)); 488 return this[_first].startChunkedConversion(this[_second].startChunkedCon version(sink));
483 } 489 }
484 } 490 }
485 return _FusedConverter; 491 return _FusedConverter;
486 }); 492 });
487 let _FusedConverter = _FusedConverter$(); 493 let _FusedConverter = _FusedConverter$();
488 let HTML_ESCAPE = dart.const(new HtmlEscape()); 494 let HTML_ESCAPE = dart.const(new HtmlEscape());
(...skipping 1921 matching lines...) Expand 10 before | Expand all | Expand 10 after
2410 exports.LineSplitter = LineSplitter; 2416 exports.LineSplitter = LineSplitter;
2411 exports.StringConversionSink = StringConversionSink; 2417 exports.StringConversionSink = StringConversionSink;
2412 exports.ClosableStringSink = ClosableStringSink; 2418 exports.ClosableStringSink = ClosableStringSink;
2413 exports.UNICODE_REPLACEMENT_CHARACTER_RUNE = UNICODE_REPLACEMENT_CHARACTER_RUN E; 2419 exports.UNICODE_REPLACEMENT_CHARACTER_RUNE = UNICODE_REPLACEMENT_CHARACTER_RUN E;
2414 exports.UNICODE_BOM_CHARACTER_RUNE = UNICODE_BOM_CHARACTER_RUNE; 2420 exports.UNICODE_BOM_CHARACTER_RUNE = UNICODE_BOM_CHARACTER_RUNE;
2415 exports.UTF8 = UTF8; 2421 exports.UTF8 = UTF8;
2416 exports.Utf8Codec = Utf8Codec; 2422 exports.Utf8Codec = Utf8Codec;
2417 exports.Utf8Encoder = Utf8Encoder; 2423 exports.Utf8Encoder = Utf8Encoder;
2418 exports.Utf8Decoder = Utf8Decoder; 2424 exports.Utf8Decoder = Utf8Decoder;
2419 })(convert || (convert = {})); 2425 })(convert || (convert = {}));
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698