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 library observe.src.change_record; | |
6 | |
7 import 'package:observe/observe.dart'; | |
8 | |
9 | |
10 /// Records a change to an [Observable]. | |
11 // TODO(jmesserly): remove this type | |
12 abstract class ChangeRecord {} | |
13 | |
14 /// A change record to a field of an observable object. | |
15 class PropertyChangeRecord<T> extends ChangeRecord { | |
16 /// The object that changed. | |
17 final object; | |
18 | |
19 /// The name of the property that changed. | |
20 final Symbol name; | |
21 | |
22 /// The previous value of the property. | |
23 final T oldValue; | |
24 | |
25 /// The new value of the property. | |
26 final T newValue; | |
27 | |
28 PropertyChangeRecord(this.object, this.name, this.oldValue, this.newValue); | |
29 | |
30 String toString() => | |
31 '#<PropertyChangeRecord $name from: $oldValue to: $newValue>'; | |
32 } | |
OLD | NEW |