| 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 void set fromJs(v) => throw "final"; |
| 26 |
| 27 Mapper<E, dynamic> get toJs => this._toJs; |
| 28 void set toJs(v) => throw "final"; |
| 29 } |
| OLD | NEW |