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

Unified Diff: sdk/lib/json/json.dart

Issue 23554004: Made old dart:json library use convert to parse JSON. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 4 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 side-by-side diff with in-line comments
Download patch
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);
}
/**

Powered by Google App Engine
This is Rietveld 408576698