| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2013, 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 part of js.wrapping; | |
| 6 | |
| 7 class Translator<E> { | |
| 8 final Mapper<dynamic, E> fromJs; | |
| 9 final Mapper<E, dynamic> toJs; | |
| 10 | |
| 11 Translator(this.fromJs, this.toJs); | |
| 12 } | |
| 13 | |
| 14 class TranslatorForSerializable<E extends Serializable> | |
| 15 implements Translator<E> { | |
| 16 Mapper<dynamic, E> _fromJs; | |
| 17 Mapper<E, dynamic> _toJs; | |
| 18 | |
| 19 TranslatorForSerializable(Mapper<dynamic, E> fromJs, {mapOnlyNotNull: true}) { | |
| 20 this._fromJs = (o) => mapOnlyNotNull ? mapNotNull(o, fromJs) : fromJs(o); | |
| 21 this._toJs = (E s) => s != null ? s.toJs() : null; | |
| 22 } | |
| 23 | |
| 24 Mapper<dynamic, E> get fromJs => this._fromJs; | |
| 25 Mapper<E, dynamic> get toJs => this._toJs; | |
| 26 } | |
| OLD | NEW |