Index: sdk/lib/convert/json.dart |
diff --git a/sdk/lib/convert/json.dart b/sdk/lib/convert/json.dart |
index 8a9c93669efb9a62c947d5a3dd47c1fa191c818f..db5659c45ef5c10c8f9bb7ad6ff33006c7299bf5 100644 |
--- a/sdk/lib/convert/json.dart |
+++ b/sdk/lib/convert/json.dart |
@@ -82,10 +82,15 @@ class JsonCodec extends Codec<Object, String> { |
* If [reviver] is omitted, it defaults to returning the value argument. |
* |
* The [toEncodable] function is used during encoding. It is invoked for |
- * values that are not directly encodable to a JSON |
+ * values that are not directly encodable to a JSON1toE |
Søren Gjesse
2014/03/14 08:10:15
What is "a JSON1toE string"?
|
* string (a value that is not a number, boolean, string, null, list or a map |
* with string keys). The function must return an object that is directly |
- * encodable. |
+ * encodable. The elements of a returned list and values of a returned map |
+ * do not need be directly encodable, and if they aren't, `toEncodable` will |
+ * be used on them as well. |
+ * Please notice that it is possible to cause an infinite recursive |
+ * regress in this way, by effectively creating an infinite data structure |
+ * through repeated call to `toEncodable`. |
* |
* If [toEncodable] is omitted, it defaults to a function that returns the |
* result of calling `.toJson()` on the unencodable object. |