Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 var convert; | 1 var convert; |
| 2 (function(exports) { | 2 (function(exports) { |
| 3 'use strict'; | 3 'use strict'; |
| 4 let ASCII = new AsciiCodec(); | 4 let ASCII = new AsciiCodec(); |
| 5 let _ASCII_MASK = 127; | 5 let _ASCII_MASK = 127; |
| 6 let _allowInvalid = Symbol('_allowInvalid'); | 6 let _allowInvalid = Symbol('_allowInvalid'); |
| 7 let _nameToEncoding = Symbol('_nameToEncoding'); | 7 let _nameToEncoding = Symbol('_nameToEncoding'); |
| 8 let Codec$ = dart.generic(function(S, T) { | 8 let Codec$ = dart.generic(function(S, T) { |
| 9 class Codec extends core.Object { | 9 class Codec extends core.Object { |
| 10 Codec() { | 10 Codec() { |
| (...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 811 super.ChunkedConversionSink(); | 811 super.ChunkedConversionSink(); |
| 812 } | 812 } |
| 813 [_addChunk](chunk, start, end) { | 813 [_addChunk](chunk, start, end) { |
| 814 this[_sink].addSlice(chunk, start, end, false); | 814 this[_sink].addSlice(chunk, start, end, false); |
| 815 } | 815 } |
| 816 add(object) { | 816 add(object) { |
| 817 if (this[_isDone]) { | 817 if (this[_isDone]) { |
| 818 throw new core.StateError("Only one call to add allowed"); | 818 throw new core.StateError("Only one call to add allowed"); |
| 819 } | 819 } |
| 820 this[_isDone] = true; | 820 this[_isDone] = true; |
| 821 _JsonUtf8Stringifier.stringify(object, this[_indent], dart.as(this[_toEnco dable$], dart.functionType(dart.dynamic, [core.Object])), this[_bufferSize], thi s[_addChunk]); | 821 _JsonUtf8Stringifier.stringify(object, this[_indent], dart.as(this[_toEnco dable$], dart.functionType(dart.dynamic, [core.Object])), this[_bufferSize], thi s[_addChunk].bind(this)); |
| 822 this[_sink].close(); | 822 this[_sink].close(); |
| 823 } | 823 } |
| 824 close() { | 824 close() { |
| 825 if (!dart.notNull(this[_isDone])) { | 825 if (!dart.notNull(this[_isDone])) { |
| 826 this[_isDone] = true; | 826 this[_isDone] = true; |
| 827 this[_sink].close(); | 827 this[_sink].close(); |
| 828 } | 828 } |
| 829 } | 829 } |
| 830 } | 830 } |
| 831 class JsonDecoder extends Converter$(core.String, core.Object) { | 831 class JsonDecoder extends Converter$(core.String, core.Object) { |
| (...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1368 } | 1368 } |
| 1369 } | 1369 } |
| 1370 } | 1370 } |
| 1371 let _addSlice = Symbol('_addSlice'); | 1371 let _addSlice = Symbol('_addSlice'); |
| 1372 class LineSplitter extends Converter$(core.String, core.List$(core.String)) { | 1372 class LineSplitter extends Converter$(core.String, core.List$(core.String)) { |
| 1373 LineSplitter() { | 1373 LineSplitter() { |
| 1374 super.Converter(); | 1374 super.Converter(); |
| 1375 } | 1375 } |
| 1376 convert(data) { | 1376 convert(data) { |
| 1377 let lines = new (core.List$(core.String))(); | 1377 let lines = new (core.List$(core.String))(); |
| 1378 _LineSplitterSink[_addSlice](data, 0, data.length, true, lines[core.$add]) ; | 1378 _LineSplitterSink[_addSlice](data, 0, data.length, true, lines[core.$add]. bind(lines)); |
| 1379 return lines; | 1379 return lines; |
| 1380 } | 1380 } |
| 1381 startChunkedConversion(sink) { | 1381 startChunkedConversion(sink) { |
| 1382 if (!dart.is(sink, StringConversionSink)) { | 1382 if (!dart.is(sink, StringConversionSink)) { |
| 1383 sink = new StringConversionSink.from(sink); | 1383 sink = new StringConversionSink.from(sink); |
| 1384 } | 1384 } |
| 1385 return new _LineSplitterSink(dart.as(sink, StringConversionSink)); | 1385 return new _LineSplitterSink(dart.as(sink, StringConversionSink)); |
| 1386 } | 1386 } |
| 1387 } | 1387 } |
| 1388 let _carry = Symbol('_carry'); | 1388 let _carry = Symbol('_carry'); |
| 1389 let _LF = Symbol('_LF'); | 1389 let _LF = Symbol('_LF'); |
| 1390 let _CR = Symbol('_CR'); | 1390 let _CR = Symbol('_CR'); |
| 1391 class _LineSplitterSink extends StringConversionSinkBase { | 1391 class _LineSplitterSink extends StringConversionSinkBase { |
| 1392 _LineSplitterSink(sink) { | 1392 _LineSplitterSink(sink) { |
| 1393 this[_sink] = sink; | 1393 this[_sink] = sink; |
| 1394 this[_carry] = null; | 1394 this[_carry] = null; |
| 1395 } | 1395 } |
| 1396 addSlice(chunk, start, end, isLast) { | 1396 addSlice(chunk, start, end, isLast) { |
| 1397 if (this[_carry] != null) { | 1397 if (this[_carry] != null) { |
| 1398 chunk = dart.notNull(this[_carry]) + dart.notNull(chunk.substring(start, end)); | 1398 chunk = dart.notNull(this[_carry]) + dart.notNull(chunk.substring(start, end)); |
| 1399 start = 0; | 1399 start = 0; |
| 1400 end = chunk.length; | 1400 end = chunk.length; |
| 1401 this[_carry] = null; | 1401 this[_carry] = null; |
| 1402 } | 1402 } |
| 1403 this[_carry] = _LineSplitterSink[_addSlice](chunk, start, end, isLast, thi s[_sink].add); | 1403 this[_carry] = _LineSplitterSink[_addSlice](chunk, start, end, isLast, thi s[_sink].add.bind(this[_sink])); |
| 1404 if (isLast) | 1404 if (isLast) |
| 1405 this[_sink].close(); | 1405 this[_sink].close(); |
| 1406 } | 1406 } |
| 1407 close() { | 1407 close() { |
| 1408 this.addSlice('', 0, 0, true); | 1408 this.addSlice('', 0, 0, true); |
| 1409 } | 1409 } |
| 1410 static [_addSlice](chunk, start, end, isLast, adder) { | 1410 static [_addSlice](chunk, start, end, isLast, adder) { |
| 1411 let pos = start; | 1411 let pos = start; |
| 1412 while (dart.notNull(pos) < dart.notNull(end)) { | 1412 while (dart.notNull(pos) < dart.notNull(end)) { |
| 1413 let skip = 0; | 1413 let skip = 0; |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1569 if (isLast) | 1569 if (isLast) |
| 1570 this.close(); | 1570 this.close(); |
| 1571 } | 1571 } |
| 1572 add(str) { | 1572 add(str) { |
| 1573 return this[_stringSink].write(str); | 1573 return this[_stringSink].write(str); |
| 1574 } | 1574 } |
| 1575 asUtf8Sink(allowMalformed) { | 1575 asUtf8Sink(allowMalformed) { |
| 1576 return new _Utf8StringSinkAdapter(this, this[_stringSink], allowMalformed) ; | 1576 return new _Utf8StringSinkAdapter(this, this[_stringSink], allowMalformed) ; |
| 1577 } | 1577 } |
| 1578 asStringSink() { | 1578 asStringSink() { |
| 1579 return new ClosableStringSink.fromStringSink(this[_stringSink], this.close ); | 1579 return new ClosableStringSink.fromStringSink(this[_stringSink], dart.bind( this, 'close')); |
|
Jacob
2015/04/21 20:27:56
I don't get why this case is dart.bind(this, 'clos
Jennifer Messerly
2015/04/21 21:11:06
Hmmm. The stateless checker may only work for iden
| |
| 1580 } | 1580 } |
| 1581 } | 1581 } |
| 1582 class _StringCallbackSink extends _StringSinkConversionSink { | 1582 class _StringCallbackSink extends _StringSinkConversionSink { |
| 1583 _StringCallbackSink(callback) { | 1583 _StringCallbackSink(callback) { |
| 1584 this[_callback] = callback; | 1584 this[_callback] = callback; |
| 1585 super._StringSinkConversionSink(new core.StringBuffer()); | 1585 super._StringSinkConversionSink(new core.StringBuffer()); |
| 1586 } | 1586 } |
| 1587 close() { | 1587 close() { |
| 1588 let buffer = dart.as(this[_stringSink], core.StringBuffer); | 1588 let buffer = dart.as(this[_stringSink], core.StringBuffer); |
| 1589 let accumulated = buffer.toString(); | 1589 let accumulated = buffer.toString(); |
| (...skipping 837 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2427 exports.LineSplitter = LineSplitter; | 2427 exports.LineSplitter = LineSplitter; |
| 2428 exports.StringConversionSink = StringConversionSink; | 2428 exports.StringConversionSink = StringConversionSink; |
| 2429 exports.ClosableStringSink = ClosableStringSink; | 2429 exports.ClosableStringSink = ClosableStringSink; |
| 2430 exports.UNICODE_REPLACEMENT_CHARACTER_RUNE = UNICODE_REPLACEMENT_CHARACTER_RUN E; | 2430 exports.UNICODE_REPLACEMENT_CHARACTER_RUNE = UNICODE_REPLACEMENT_CHARACTER_RUN E; |
| 2431 exports.UNICODE_BOM_CHARACTER_RUNE = UNICODE_BOM_CHARACTER_RUNE; | 2431 exports.UNICODE_BOM_CHARACTER_RUNE = UNICODE_BOM_CHARACTER_RUNE; |
| 2432 exports.UTF8 = UTF8; | 2432 exports.UTF8 = UTF8; |
| 2433 exports.Utf8Codec = Utf8Codec; | 2433 exports.Utf8Codec = Utf8Codec; |
| 2434 exports.Utf8Encoder = Utf8Encoder; | 2434 exports.Utf8Encoder = Utf8Encoder; |
| 2435 exports.Utf8Decoder = Utf8Decoder; | 2435 exports.Utf8Decoder = Utf8Decoder; |
| 2436 })(convert || (convert = {})); | 2436 })(convert || (convert = {})); |
| OLD | NEW |