Chromium Code Reviews| Index: sdk/lib/json/json.dart |
| diff --git a/sdk/lib/json/json.dart b/sdk/lib/json/json.dart |
| index 5fd3a6ae20c0da9e60d0738eaa4e5959abbe91d7..48978ae9f7ff2a2b543e97b385f3b915b5d8c7b7 100644 |
| --- a/sdk/lib/json/json.dart |
| +++ b/sdk/lib/json/json.dart |
| @@ -8,6 +8,8 @@ |
| library dart.json; |
| +import "dart:convert"; |
| + |
| // JSON parsing and serialization. |
| /** |
| @@ -66,17 +68,12 @@ class JsonCyclicError extends JsonUnsupportedObjectError { |
| * |
| * Throws [FormatException] if the input is not valid JSON text. |
| */ |
| -external parse(String json, [reviver(var key, var value)]); |
| - |
| -_parse(String json, reviver(var key, var value)) { |
| - BuildJsonListener listener; |
| - if (reviver == null) { |
| - listener = new BuildJsonListener(); |
| - } else { |
| - listener = new ReviverJsonListener(reviver); |
| +parse(String json, [reviver(var key, var value)]) { |
| + if (reviver != null) { |
| + var original = reviver; |
| + reviver = (key, value) => original(key == null ? "" : key, value); |
|
floitsch
2013/08/27 13:25:40
Again: let's make this in a separate CL.
Lasse Reichstein Nielsen
2013/08/28 08:02:59
Done.
|
| } |
| - new JsonParser(json, listener).parse(); |
| - return listener.result; |
| + return JSON.decode(json, reviver: reviver); |
| } |
| /** |