| 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 |