| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 part of dart.io; | 5 part of dart.io; |
| 6 | 6 |
| 7 /** | 7 /** |
| 8 * String encodings. | 8 * String encodings. |
| 9 */ | 9 */ |
| 10 class Encoding { | 10 class Encoding { |
| 11 static const Encoding UTF_8 = const Encoding._internal("utf-8"); | 11 static const Encoding UTF_8 = const Encoding._internal("utf-8"); |
| 12 static const Encoding ISO_8859_1 = const Encoding._internal("iso-8859-1"); | 12 static const Encoding ISO_8859_1 = const Encoding._internal("iso-8859-1"); |
| 13 static const Encoding ASCII = const Encoding._internal("us-ascii"); | 13 static const Encoding ASCII = const Encoding._internal("us-ascii"); |
| 14 | 14 |
| 15 /** | 15 /** |
| 16 * SYSTEM encoding is the current code page on Windows and UTF-8 on | 16 * SYSTEM encoding is the current code page on Windows and UTF-8 on |
| 17 * Linux and Mac. | 17 * Linux and Mac. |
| 18 */ | 18 */ |
| 19 static const Encoding SYSTEM = const Encoding._internal("system"); | 19 static const Encoding SYSTEM = const Encoding._internal("system"); |
| 20 | 20 |
| 21 /** | |
| 22 * BINARY encoding is used to specify that no encoding is used and | |
| 23 * binary data is expected. | |
| 24 */ | |
| 25 static const Encoding BINARY = const Encoding._internal("binary"); | |
| 26 | |
| 27 // All aliasses (in lowercase) of supported encoding from | 21 // All aliasses (in lowercase) of supported encoding from |
| 28 // http://www.iana.org/assignments/character-sets/character-sets.xml. | 22 // http://www.iana.org/assignments/character-sets/character-sets.xml. |
| 29 static Map<String, Encoding> _nameToEncoding = <String, Encoding> { | 23 static Map<String, Encoding> _nameToEncoding = <String, Encoding> { |
| 30 // ISO_8859-1:1987. | 24 // ISO_8859-1:1987. |
| 31 "iso_8859-1:1987": ISO_8859_1, | 25 "iso_8859-1:1987": ISO_8859_1, |
| 32 "iso-ir-100": ISO_8859_1, | 26 "iso-ir-100": ISO_8859_1, |
| 33 "iso_8859-1": ISO_8859_1, | 27 "iso_8859-1": ISO_8859_1, |
| 34 "iso-8859-1": ISO_8859_1, | 28 "iso-8859-1": ISO_8859_1, |
| 35 "latin1": ISO_8859_1, | 29 "latin1": ISO_8859_1, |
| 36 "l1": ISO_8859_1, | 30 "l1": ISO_8859_1, |
| (...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 391 | 385 |
| 392 // Utility class for decoding Windows current code page data delivered | 386 // Utility class for decoding Windows current code page data delivered |
| 393 // as a stream of bytes. | 387 // as a stream of bytes. |
| 394 class _WindowsCodePageDecoder extends StreamEventTransformer<List<int>, String>
{ | 388 class _WindowsCodePageDecoder extends StreamEventTransformer<List<int>, String>
{ |
| 395 void handleData(List<int> data, EventSink<String> sink) { | 389 void handleData(List<int> data, EventSink<String> sink) { |
| 396 sink.add(_decodeBytes(data)); | 390 sink.add(_decodeBytes(data)); |
| 397 } | 391 } |
| 398 | 392 |
| 399 external static String _decodeBytes(List<int> bytes); | 393 external static String _decodeBytes(List<int> bytes); |
| 400 } | 394 } |
| OLD | NEW |