| OLD | NEW |
| 1 part of dart.convert; | 1 part of dart.convert; |
| 2 class JsonUnsupportedObjectError extends Error {final unsupportedObject; | 2 class JsonUnsupportedObjectError extends Error {final unsupportedObject; |
| 3 final cause; | 3 final cause; |
| 4 JsonUnsupportedObjectError(this.unsupportedObject, { | 4 JsonUnsupportedObjectError(this.unsupportedObject, { |
| 5 this.cause} | 5 this.cause} |
| 6 ); | 6 ); |
| 7 String toString() { | 7 String toString() { |
| 8 if (cause != null) { | 8 if (cause != null) { |
| 9 return "Converting object to an encodable object failed."; | 9 return "Converting object to an encodable object failed."; |
| 10 } | 10 } |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 ) { | 30 ) { |
| 31 if (reviver == null) reviver = _reviver; | 31 if (reviver == null) reviver = _reviver; |
| 32 if (reviver == null) return decoder.convert(source); | 32 if (reviver == null) return decoder.convert(source); |
| 33 return new JsonDecoder(reviver).convert(source); | 33 return new JsonDecoder(reviver).convert(source); |
| 34 } | 34 } |
| 35 String encode(Object value, { | 35 String encode(Object value, { |
| 36 toEncodable(var object)} | 36 toEncodable(var object)} |
| 37 ) { | 37 ) { |
| 38 if (toEncodable == null) toEncodable = _toEncodable; | 38 if (toEncodable == null) toEncodable = _toEncodable; |
| 39 if (toEncodable == null) return encoder.convert(value); | 39 if (toEncodable == null) return encoder.convert(value); |
| 40 return new JsonEncoder(DEVC$RT.wrap((dynamic f(dynamic __u6)) { | 40 return new JsonEncoder(DEVC$RT.cast(toEncodable, __t8, __t6, "CompositeCast", "
""line 142, column 28 of dart:convert/json.dart: """, toEncodable is __t6, false
)).convert(value); |
| 41 dynamic c(dynamic x0) => f(x0); | |
| 42 return f == null ? null : c; | |
| 43 } | |
| 44 , toEncodable, __t9, __t7, "Wrap", """line 142, column 28 of dart:convert/json.d
art: """, toEncodable is __t7)).convert(value); | |
| 45 } | 41 } |
| 46 JsonEncoder get encoder { | 42 JsonEncoder get encoder { |
| 47 if (_toEncodable == null) return const JsonEncoder(); | 43 if (_toEncodable == null) return const JsonEncoder(); |
| 48 return new JsonEncoder(DEVC$RT.wrap((dynamic f(dynamic __u11)) { | 44 return new JsonEncoder(DEVC$RT.cast(_toEncodable, __t8, __t6, "CompositeCast",
"""line 147, column 28 of dart:convert/json.dart: """, _toEncodable is __t6, fal
se)); |
| 49 dynamic c(dynamic x0) => f(x0); | |
| 50 return f == null ? null : c; | |
| 51 } | |
| 52 , _toEncodable, __t9, __t7, "Wrap", """line 147, column 28 of dart:convert/json.
dart: """, _toEncodable is __t7)); | |
| 53 } | 45 } |
| 54 JsonDecoder get decoder { | 46 JsonDecoder get decoder { |
| 55 if (_reviver == null) return const JsonDecoder(); | 47 if (_reviver == null) return const JsonDecoder(); |
| 56 return new JsonDecoder(_reviver); | 48 return new JsonDecoder(_reviver); |
| 57 } | 49 } |
| 58 } | 50 } |
| 59 class JsonEncoder extends Converter<Object, String> {final String indent; | 51 class JsonEncoder extends Converter<Object, String> {final String indent; |
| 60 final Function _toEncodable; | 52 final Function _toEncodable; |
| 61 const JsonEncoder([Object toEncodable(Object nonSerializable)]) : this.indent =
null, this._toEncodable = toEncodable; | 53 const JsonEncoder([Object toEncodable(Object nonSerializable)]) : this.indent =
null, this._toEncodable = toEncodable; |
| 62 const JsonEncoder.withIndent(this.indent, [Object toEncodable(Object nonSeriali
zable)]) : this._toEncodable = toEncodable; | 54 const JsonEncoder.withIndent(this.indent, [Object toEncodable(Object nonSeriali
zable)]) : this._toEncodable = toEncodable; |
| 63 String convert(Object object) => _JsonStringStringifier.stringify(object, DEVC$
RT.cast(_toEncodable, Function, __t9, "ImplicitCast", """line 243, column 48 of
dart:convert/json.dart: """, _toEncodable is __t9, true), indent); | 55 String convert(Object object) => _JsonStringStringifier.stringify(object, DEVC$
RT.cast(_toEncodable, Function, __t8, "ImplicitCast", """line 243, column 48 of
dart:convert/json.dart: """, _toEncodable is __t8, true), indent); |
| 64 ChunkedConversionSink<Object> startChunkedConversion(Sink<String> sink) { | 56 ChunkedConversionSink<Object> startChunkedConversion(Sink<String> sink) { |
| 65 if (sink is! StringConversionSink) { | 57 if (sink is! StringConversionSink) { |
| 66 sink = new StringConversionSink.from(sink); | 58 sink = new StringConversionSink.from(sink); |
| 67 } | 59 } |
| 68 else if (sink is _Utf8EncoderSink) { | 60 else if (sink is _Utf8EncoderSink) { |
| 69 return new _JsonUtf8EncoderSink(sink._sink, _toEncodable, JsonUtf8Encoder._utf8E
ncode(indent), JsonUtf8Encoder.DEFAULT_BUFFER_SIZE); | 61 return new _JsonUtf8EncoderSink(sink._sink, _toEncodable, JsonUtf8Encoder._utf8E
ncode(indent), JsonUtf8Encoder.DEFAULT_BUFFER_SIZE); |
| 70 } | 62 } |
| 71 return new _JsonEncoderSink(DEVC$RT.cast(sink, DEVC$RT.type((Sink<String> _) { | 63 return new _JsonEncoderSink(DEVC$RT.cast(sink, DEVC$RT.type((Sink<String> _) { |
| 72 } | 64 } |
| 73 ), StringConversionSink, "ImplicitCast", """line 262, column 33 of dart:convert/
json.dart: """, sink is StringConversionSink, true), _toEncodable, indent); | 65 ), StringConversionSink, "ImplicitCast", """line 262, column 33 of dart:convert/
json.dart: """, sink is StringConversionSink, true), _toEncodable, indent); |
| 74 } | 66 } |
| 75 Stream<String> bind(Stream<Object> stream) => ((__x12) => DEVC$RT.cast(__x12, D
EVC$RT.type((DDC$async$.Stream<dynamic> _) { | 67 Stream<String> bind(Stream<Object> stream) => ((__x10) => DEVC$RT.cast(__x10, D
EVC$RT.type((DDC$async$.Stream<dynamic> _) { |
| 76 } | 68 } |
| 77 ), DEVC$RT.type((DDC$async$.Stream<String> _) { | 69 ), DEVC$RT.type((DDC$async$.Stream<String> _) { |
| 78 } | 70 } |
| 79 ), "CompositeCast", """line 266, column 49 of dart:convert/json.dart: """, __x12
is DDC$async$.Stream<String>, false))(super.bind(stream)); | 71 ), "CompositeCast", """line 266, column 49 of dart:convert/json.dart: """, __x10
is DDC$async$.Stream<String>, false))(super.bind(stream)); |
| 80 Converter<Object, dynamic> fuse(Converter<String, dynamic> other) { | 72 Converter<Object, dynamic> fuse(Converter<String, dynamic> other) { |
| 81 if (other is Utf8Encoder) { | 73 if (other is Utf8Encoder) { |
| 82 return new JsonUtf8Encoder(indent, DEVC$RT.cast(_toEncodable, Function, __t13, "
CompositeCast", """line 270, column 42 of dart:convert/json.dart: """, _toEncoda
ble is __t13, false)); | 74 return new JsonUtf8Encoder(indent, DEVC$RT.cast(_toEncodable, Function, __t11, "
CompositeCast", """line 270, column 42 of dart:convert/json.dart: """, _toEncoda
ble is __t11, false)); |
| 83 } | 75 } |
| 84 return super.fuse(other); | 76 return super.fuse(other); |
| 85 } | 77 } |
| 86 } | 78 } |
| 87 class JsonUtf8Encoder extends Converter<Object, List<int>> {static const int DE
FAULT_BUFFER_SIZE = 256; | 79 class JsonUtf8Encoder extends Converter<Object, List<int>> {static const int DE
FAULT_BUFFER_SIZE = 256; |
| 88 final List<int> _indent; | 80 final List<int> _indent; |
| 89 final Function _toEncodable; | 81 final Function _toEncodable; |
| 90 final int _bufferSize; | 82 final int _bufferSize; |
| 91 JsonUtf8Encoder([String indent, toEncodable(Object object), int bufferSize = DE
FAULT_BUFFER_SIZE]) : _indent = _utf8Encode(indent), _toEncodable = toEncodable,
_bufferSize = bufferSize; | 83 JsonUtf8Encoder([String indent, toEncodable(Object object), int bufferSize = DE
FAULT_BUFFER_SIZE]) : _indent = _utf8Encode(indent), _toEncodable = toEncodable,
_bufferSize = bufferSize; |
| 92 static List<int> _utf8Encode(String string) { | 84 static List<int> _utf8Encode(String string) { |
| 93 if (string == null) return null; | 85 if (string == null) return null; |
| 94 if (string.isEmpty) return new Uint8List(0); | 86 if (string.isEmpty) return new Uint8List(0); |
| 95 checkAscii: { | 87 checkAscii: { |
| 96 for (int i = 0; i < string.length; i++) { | 88 for (int i = 0; i < string.length; i++) { |
| 97 if (string.codeUnitAt(i) >= 0x80) break checkAscii; | 89 if (string.codeUnitAt(i) >= 0x80) break checkAscii; |
| 98 } | 90 } |
| 99 return string.codeUnits; | 91 return string.codeUnits; |
| 100 } | 92 } |
| 101 return UTF8.encode(string); | 93 return UTF8.encode(string); |
| 102 } | 94 } |
| 103 List<int> convert(Object object) { | 95 List<int> convert(Object object) { |
| 104 List<List<int>> bytes = <List<int>> []; | 96 List<List<int>> bytes = <List<int>> []; |
| 105 void addChunk(Uint8List chunk, int start, int end) { | 97 void addChunk(Uint8List chunk, int start, int end) { |
| 106 if (start > 0 || end < chunk.length) { | 98 if (start > 0 || end < chunk.length) { |
| 107 int length = end - start; | 99 int length = end - start; |
| 108 chunk = new Uint8List.view(chunk.buffer, chunk.offsetInBytes + start, length); | 100 chunk = new Uint8List.view(chunk.buffer, chunk.offsetInBytes + start, length); |
| 109 } | 101 } |
| 110 bytes.add(chunk); | 102 bytes.add(chunk); |
| 111 } | 103 } |
| 112 _JsonUtf8Stringifier.stringify(object, _indent, DEVC$RT.cast(_toEncodable, Func
tion, __t13, "CompositeCast", """line 352, column 36 of dart:convert/json.dart:
""", _toEncodable is __t13, false), _bufferSize, addChunk); | 104 _JsonUtf8Stringifier.stringify(object, _indent, DEVC$RT.cast(_toEncodable, Func
tion, __t11, "CompositeCast", """line 352, column 36 of dart:convert/json.dart:
""", _toEncodable is __t11, false), _bufferSize, addChunk); |
| 113 if (bytes.length == 1) return bytes[0]; | 105 if (bytes.length == 1) return bytes[0]; |
| 114 int length = 0; | 106 int length = 0; |
| 115 for (int i = 0; i < bytes.length; i++) { | 107 for (int i = 0; i < bytes.length; i++) { |
| 116 length += bytes[i].length; | 108 length += bytes[i].length; |
| 117 } | 109 } |
| 118 Uint8List result = new Uint8List(length); | 110 Uint8List result = new Uint8List(length); |
| 119 for (int i = 0, offset = 0; i < bytes.length; i++) { | 111 for (int i = 0, offset = 0; i < bytes.length; i++) { |
| 120 var byteList = bytes[i]; | 112 var byteList = bytes[i]; |
| 121 int end = offset + byteList.length; | 113 int end = offset + byteList.length; |
| 122 result.setRange(offset, end, byteList); | 114 result.setRange(offset, end, byteList); |
| 123 offset = end; | 115 offset = end; |
| 124 } | 116 } |
| 125 return result; | 117 return result; |
| 126 } | 118 } |
| 127 ChunkedConversionSink<Object> startChunkedConversion(Sink<List<int>> sink) { | 119 ChunkedConversionSink<Object> startChunkedConversion(Sink<List<int>> sink) { |
| 128 ByteConversionSink byteSink; | 120 ByteConversionSink byteSink; |
| 129 if (sink is ByteConversionSink) { | 121 if (sink is ByteConversionSink) { |
| 130 byteSink = sink; | 122 byteSink = sink; |
| 131 } | 123 } |
| 132 else { | 124 else { |
| 133 byteSink = new ByteConversionSink.from(sink); | 125 byteSink = new ByteConversionSink.from(sink); |
| 134 } | 126 } |
| 135 return new _JsonUtf8EncoderSink(byteSink, _toEncodable, _indent, _bufferSize); | 127 return new _JsonUtf8EncoderSink(byteSink, _toEncodable, _indent, _bufferSize); |
| 136 } | 128 } |
| 137 Stream<List<int>> bind(Stream<Object> stream) { | 129 Stream<List<int>> bind(Stream<Object> stream) { |
| 138 return ((__x15) => DEVC$RT.cast(__x15, DEVC$RT.type((DDC$async$.Stream<dynamic>
_) { | 130 return ((__x13) => DEVC$RT.cast(__x13, DEVC$RT.type((DDC$async$.Stream<dynamic>
_) { |
| 139 } | 131 } |
| 140 ), DEVC$RT.type((DDC$async$.Stream<List<int>> _) { | 132 ), DEVC$RT.type((DDC$async$.Stream<List<int>> _) { |
| 141 } | 133 } |
| 142 ), "CompositeCast", """line 391, column 12 of dart:convert/json.dart: """, __x15
is DDC$async$.Stream<List<int>>, false))(super.bind(stream)); | 134 ), "CompositeCast", """line 391, column 12 of dart:convert/json.dart: """, __x13
is DDC$async$.Stream<List<int>>, false))(super.bind(stream)); |
| 143 } | 135 } |
| 144 Converter<Object, dynamic> fuse(Converter<List<int>, dynamic> other) { | 136 Converter<Object, dynamic> fuse(Converter<List<int>, dynamic> other) { |
| 145 return super.fuse(other); | 137 return super.fuse(other); |
| 146 } | 138 } |
| 147 } | 139 } |
| 148 class _JsonEncoderSink extends ChunkedConversionSink<Object> {final String _ind
ent; | 140 class _JsonEncoderSink extends ChunkedConversionSink<Object> {final String _ind
ent; |
| 149 final Function _toEncodable; | 141 final Function _toEncodable; |
| 150 final StringConversionSink _sink; | 142 final StringConversionSink _sink; |
| 151 bool _isDone = false; | 143 bool _isDone = false; |
| 152 _JsonEncoderSink(this._sink, this._toEncodable, this._indent); | 144 _JsonEncoderSink(this._sink, this._toEncodable, this._indent); |
| 153 void add(Object o) { | 145 void add(Object o) { |
| 154 if (_isDone) { | 146 if (_isDone) { |
| 155 throw new StateError("Only one call to add allowed"); | 147 throw new StateError("Only one call to add allowed"); |
| 156 } | 148 } |
| 157 _isDone = true; | 149 _isDone = true; |
| 158 ClosableStringSink stringSink = _sink.asStringSink(); | 150 ClosableStringSink stringSink = _sink.asStringSink(); |
| 159 _JsonStringStringifier.printOn(o, stringSink, DEVC$RT.cast(_toEncodable, Functi
on, __t9, "ImplicitCast", """line 425, column 51 of dart:convert/json.dart: """,
_toEncodable is __t9, true), _indent); | 151 _JsonStringStringifier.printOn(o, stringSink, DEVC$RT.cast(_toEncodable, Functi
on, __t8, "ImplicitCast", """line 425, column 51 of dart:convert/json.dart: """,
_toEncodable is __t8, true), _indent); |
| 160 stringSink.close(); | 152 stringSink.close(); |
| 161 } | 153 } |
| 162 void close() { | 154 void close() { |
| 163 } | 155 } |
| 164 } | 156 } |
| 165 class _JsonUtf8EncoderSink extends ChunkedConversionSink<Object> {final ByteCon
versionSink _sink; | 157 class _JsonUtf8EncoderSink extends ChunkedConversionSink<Object> {final ByteCon
versionSink _sink; |
| 166 final List<int> _indent; | 158 final List<int> _indent; |
| 167 final Function _toEncodable; | 159 final Function _toEncodable; |
| 168 final int _bufferSize; | 160 final int _bufferSize; |
| 169 bool _isDone = false; | 161 bool _isDone = false; |
| 170 _JsonUtf8EncoderSink(this._sink, this._toEncodable, this._indent, this._bufferS
ize); | 162 _JsonUtf8EncoderSink(this._sink, this._toEncodable, this._indent, this._bufferS
ize); |
| 171 void _addChunk(Uint8List chunk, int start, int end) { | 163 void _addChunk(Uint8List chunk, int start, int end) { |
| 172 _sink.addSlice(chunk, start, end, false); | 164 _sink.addSlice(chunk, start, end, false); |
| 173 } | 165 } |
| 174 void add(Object object) { | 166 void add(Object object) { |
| 175 if (_isDone) { | 167 if (_isDone) { |
| 176 throw new StateError("Only one call to add allowed"); | 168 throw new StateError("Only one call to add allowed"); |
| 177 } | 169 } |
| 178 _isDone = true; | 170 _isDone = true; |
| 179 _JsonUtf8Stringifier.stringify(object, _indent, DEVC$RT.cast(_toEncodable, Func
tion, __t13, "CompositeCast", """line 455, column 53 of dart:convert/json.dart:
""", _toEncodable is __t13, false), _bufferSize, _addChunk); | 171 _JsonUtf8Stringifier.stringify(object, _indent, DEVC$RT.cast(_toEncodable, Func
tion, __t11, "CompositeCast", """line 455, column 53 of dart:convert/json.dart:
""", _toEncodable is __t11, false), _bufferSize, _addChunk); |
| 180 _sink.close(); | 172 _sink.close(); |
| 181 } | 173 } |
| 182 void close() { | 174 void close() { |
| 183 if (!_isDone) { | 175 if (!_isDone) { |
| 184 _isDone = true; | 176 _isDone = true; |
| 185 _sink.close(); | 177 _sink.close(); |
| 186 } | 178 } |
| 187 } | 179 } |
| 188 } | 180 } |
| 189 class JsonDecoder extends Converter<String, Object> {final _Reviver _reviver; | 181 class JsonDecoder extends Converter<String, Object> {final _Reviver _reviver; |
| (...skipping 13 matching lines...) Expand all Loading... |
| 203 static const int CHAR_0 = 0x30; | 195 static const int CHAR_0 = 0x30; |
| 204 static const int BACKSLASH = 0x5c; | 196 static const int BACKSLASH = 0x5c; |
| 205 static const int CHAR_b = 0x62; | 197 static const int CHAR_b = 0x62; |
| 206 static const int CHAR_f = 0x66; | 198 static const int CHAR_f = 0x66; |
| 207 static const int CHAR_n = 0x6e; | 199 static const int CHAR_n = 0x6e; |
| 208 static const int CHAR_r = 0x72; | 200 static const int CHAR_r = 0x72; |
| 209 static const int CHAR_t = 0x74; | 201 static const int CHAR_t = 0x74; |
| 210 static const int CHAR_u = 0x75; | 202 static const int CHAR_u = 0x75; |
| 211 final List _seen = new List(); | 203 final List _seen = new List(); |
| 212 final Function _toEncodable; | 204 final Function _toEncodable; |
| 213 _JsonStringifier(Object _toEncodable(Object o)) : _toEncodable = ((__x16) => DE
VC$RT.cast(__x16, dynamic, Function, "DynamicCast", """line 547, column 24 of da
rt:convert/json.dart: """, __x16 is Function, true))((_toEncodable != null) ? _t
oEncodable : _defaultToEncodable); | 205 _JsonStringifier(Object _toEncodable(Object o)) : _toEncodable = ((__x14) => DE
VC$RT.cast(__x14, dynamic, Function, "DynamicCast", """line 547, column 24 of da
rt:convert/json.dart: """, __x14 is Function, true))((_toEncodable != null) ? _t
oEncodable : _defaultToEncodable); |
| 214 void writeString(String characters); | 206 void writeString(String characters); |
| 215 void writeStringSlice(String characters, int start, int end); | 207 void writeStringSlice(String characters, int start, int end); |
| 216 void writeCharCode(int charCode); | 208 void writeCharCode(int charCode); |
| 217 void writeNumber(num number); | 209 void writeNumber(num number); |
| 218 static int hexDigit(int x) => x < 10 ? 48 + x : 87 + x; | 210 static int hexDigit(int x) => x < 10 ? 48 + x : 87 + x; |
| 219 void writeStringContent(String s) { | 211 void writeStringContent(String s) { |
| 220 int offset = 0; | 212 int offset = 0; |
| 221 final int length = s.length; | 213 final int length = s.length; |
| 222 for (int i = 0; i < length; i++) { | 214 for (int i = 0; i < length; i++) { |
| 223 int charCode = s.codeUnitAt(i); | 215 int charCode = s.codeUnitAt(i); |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 333 for (int i = 1; i < list.length; i++) { | 325 for (int i = 1; i < list.length; i++) { |
| 334 writeString(','); | 326 writeString(','); |
| 335 writeObject(list[i]); | 327 writeObject(list[i]); |
| 336 } | 328 } |
| 337 } | 329 } |
| 338 writeString(']'); | 330 writeString(']'); |
| 339 } | 331 } |
| 340 void writeMap(Map<String, Object> map) { | 332 void writeMap(Map<String, Object> map) { |
| 341 writeString('{'); | 333 writeString('{'); |
| 342 String separator = '"'; | 334 String separator = '"'; |
| 343 map.forEach(((__x25) => DEVC$RT.wrap((dynamic f(String __u17, dynamic __u18)) { | 335 map.forEach(((__x21) => DEVC$RT.cast(__x21, __t18, __t15, "InferableClosure", "
""line 721, column 17 of dart:convert/json.dart: """, __x21 is __t15, false))((S
tring key, value) { |
| 344 dynamic c(String x0, dynamic x1) => f(x0, x1); | |
| 345 return f == null ? null : c; | |
| 346 } | |
| 347 , __x25, __t22, __t19, "WrapLiteral", """line 721, column 17 of dart:convert/jso
n.dart: """, __x25 is __t19))((String key, value) { | |
| 348 writeString(separator); | 336 writeString(separator); |
| 349 separator = ',"'; | 337 separator = ',"'; |
| 350 writeStringContent(key); | 338 writeStringContent(key); |
| 351 writeString('":'); | 339 writeString('":'); |
| 352 writeObject(value); | 340 writeObject(value); |
| 353 } | 341 } |
| 354 )); | 342 )); |
| 355 writeString('}'); | 343 writeString('}'); |
| 356 } | 344 } |
| 357 } | 345 } |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 398 } | 386 } |
| 399 ); | 387 ); |
| 400 writeString('\n'); | 388 writeString('\n'); |
| 401 _indentLevel--; | 389 _indentLevel--; |
| 402 writeIndentation(_indentLevel); | 390 writeIndentation(_indentLevel); |
| 403 writeString('}'); | 391 writeString('}'); |
| 404 } | 392 } |
| 405 } | 393 } |
| 406 } | 394 } |
| 407 class _JsonStringStringifier extends _JsonStringifier {final StringSink _sink; | 395 class _JsonStringStringifier extends _JsonStringifier {final StringSink _sink; |
| 408 _JsonStringStringifier(this._sink, _toEncodable) : super(DEVC$RT.cast(_toEncoda
ble, dynamic, __t7, "CompositeCast", """line 798, column 60 of dart:convert/json
.dart: """, _toEncodable is __t7, false)); | 396 _JsonStringStringifier(this._sink, _toEncodable) : super(DEVC$RT.cast(_toEncoda
ble, dynamic, __t6, "CompositeCast", """line 798, column 60 of dart:convert/json
.dart: """, _toEncodable is __t6, false)); |
| 409 static String stringify(object, toEncodable(object), String indent) { | 397 static String stringify(object, toEncodable(object), String indent) { |
| 410 StringBuffer output = new StringBuffer(); | 398 StringBuffer output = new StringBuffer(); |
| 411 printOn(object, output, toEncodable, indent); | 399 printOn(object, output, toEncodable, indent); |
| 412 return output.toString(); | 400 return output.toString(); |
| 413 } | 401 } |
| 414 static void printOn(object, StringSink output, toEncodable(object), String inde
nt) { | 402 static void printOn(object, StringSink output, toEncodable(object), String inde
nt) { |
| 415 var stringifier; | 403 var stringifier; |
| 416 if (indent == null) { | 404 if (indent == null) { |
| 417 stringifier = new _JsonStringStringifier(output, toEncodable); | 405 stringifier = new _JsonStringStringifier(output, toEncodable); |
| 418 } | 406 } |
| (...skipping 18 matching lines...) Expand all Loading... |
| 437 class _JsonStringStringifierPretty extends _JsonStringStringifier with _JsonPre
ttyPrintMixin {final String _indent; | 425 class _JsonStringStringifierPretty extends _JsonStringStringifier with _JsonPre
ttyPrintMixin {final String _indent; |
| 438 _JsonStringStringifierPretty(StringSink sink, Function toEncodable, this._inden
t) : super(sink, toEncodable); | 426 _JsonStringStringifierPretty(StringSink sink, Function toEncodable, this._inden
t) : super(sink, toEncodable); |
| 439 void writeIndentation(int count) { | 427 void writeIndentation(int count) { |
| 440 for (int i = 0; i < count; i++) writeString(_indent); | 428 for (int i = 0; i < count; i++) writeString(_indent); |
| 441 } | 429 } |
| 442 } | 430 } |
| 443 class _JsonUtf8Stringifier extends _JsonStringifier {final int bufferSize; | 431 class _JsonUtf8Stringifier extends _JsonStringifier {final int bufferSize; |
| 444 final Function addChunk; | 432 final Function addChunk; |
| 445 Uint8List buffer; | 433 Uint8List buffer; |
| 446 int index = 0; | 434 int index = 0; |
| 447 _JsonUtf8Stringifier(toEncodable, int bufferSize, this.addChunk) : super(DEVC$R
T.cast(toEncodable, dynamic, __t7, "CompositeCast", """line 874, column 15 of da
rt:convert/json.dart: """, toEncodable is __t7, false)), this.bufferSize = buffe
rSize, buffer = new Uint8List(bufferSize); | 435 _JsonUtf8Stringifier(toEncodable, int bufferSize, this.addChunk) : super(DEVC$R
T.cast(toEncodable, dynamic, __t6, "CompositeCast", """line 874, column 15 of da
rt:convert/json.dart: """, toEncodable is __t6, false)), this.bufferSize = buffe
rSize, buffer = new Uint8List(bufferSize); |
| 448 static void stringify(Object object, List<int> indent, toEncodableFunction(Obje
ct o), int bufferSize, void addChunk(Uint8List chunk, int start, int end)) { | 436 static void stringify(Object object, List<int> indent, toEncodableFunction(Obje
ct o), int bufferSize, void addChunk(Uint8List chunk, int start, int end)) { |
| 449 _JsonUtf8Stringifier stringifier; | 437 _JsonUtf8Stringifier stringifier; |
| 450 if (indent != null) { | 438 if (indent != null) { |
| 451 stringifier = new _JsonUtf8StringifierPretty(toEncodableFunction, indent, buffer
Size, addChunk); | 439 stringifier = new _JsonUtf8StringifierPretty(toEncodableFunction, indent, buffer
Size, addChunk); |
| 452 } | 440 } |
| 453 else { | 441 else { |
| 454 stringifier = new _JsonUtf8Stringifier(toEncodableFunction, bufferSize, addChunk
); | 442 stringifier = new _JsonUtf8Stringifier(toEncodableFunction, bufferSize, addChunk
); |
| 455 } | 443 } |
| 456 stringifier.writeObject(object); | 444 stringifier.writeObject(object); |
| 457 stringifier.flush(); | 445 stringifier.flush(); |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 548 index = end; | 536 index = end; |
| 549 } | 537 } |
| 550 else { | 538 else { |
| 551 for (int i = 0; i < indentLength; i++) { | 539 for (int i = 0; i < indentLength; i++) { |
| 552 writeByte(indent[i]); | 540 writeByte(indent[i]); |
| 553 } | 541 } |
| 554 } | 542 } |
| 555 } | 543 } |
| 556 } | 544 } |
| 557 } | 545 } |
| 558 typedef Object __t7(Object __u8); | 546 typedef Object __t6(Object __u7); |
| 559 typedef dynamic __t9(dynamic __u10); | 547 typedef dynamic __t8(dynamic __u9); |
| 560 typedef dynamic __t13(Object __u14); | 548 typedef dynamic __t11(Object __u12); |
| 561 typedef void __t19(String __u20, Object __u21); | 549 typedef void __t15(String __u16, Object __u17); |
| 562 typedef dynamic __t22(String __u23, dynamic __u24); | 550 typedef dynamic __t18(String __u19, dynamic __u20); |
| OLD | NEW |