OLD | NEW |
| (Empty) |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | |
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. | |
4 | |
5 library services.json; | |
6 | |
7 /** | |
8 * Instances of the class [HasToJson] implement [toJson] method that returns | |
9 * a JSON presentation. | |
10 */ | |
11 abstract class HasToJson { | |
12 /** | |
13 * Returns a JSON presentation of the object. | |
14 */ | |
15 Map<String, Object> toJson(); | |
16 } | |
17 | |
18 | |
19 /** | |
20 * Returns a JSON presention of [value]. | |
21 */ | |
22 objectToJson(Object value) { | |
23 if (value is HasToJson) { | |
24 return value.toJson(); | |
25 } | |
26 if (value is Iterable) { | |
27 return value.map((item) => objectToJson(item)).toList(); | |
28 } | |
29 return value; | |
30 } | |
OLD | NEW |