OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 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 | 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. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 library observe.src.list_diff; | 5 library observe.src.list_diff; |
6 | 6 |
7 import 'dart:math' as math; | 7 import 'dart:math' as math; |
8 import 'dart:collection' show UnmodifiableListView; | 8 import 'dart:collection' show UnmodifiableListView; |
| 9 import 'change_record.dart' show ChangeRecord; |
9 | 10 |
10 /// A summary of an individual change to a [List]. | 11 /// A summary of an individual change to a [List]. |
11 /// | 12 /// |
12 /// Each delta represents that at the [index], [removed] sequence of items were | 13 /// Each delta represents that at the [index], [removed] sequence of items were |
13 /// removed, and counting forward from [index], [addedCount] items were added. | 14 /// removed, and counting forward from [index], [addedCount] items were added. |
14 class ListChangeRecord { | 15 class ListChangeRecord extends ChangeRecord { |
15 /// The list that changed. | 16 /// The list that changed. |
16 final List object; | 17 final List object; |
17 | 18 |
18 /// The index of the change. | 19 /// The index of the change. |
19 int get index => _index; | 20 int get index => _index; |
20 | 21 |
21 /// The items removed, if any. Otherwise this will be an empty list. | 22 /// The items removed, if any. Otherwise this will be an empty list. |
22 List get removed => _unmodifiableRemoved; | 23 List get removed => _unmodifiableRemoved; |
23 UnmodifiableListView _unmodifiableRemoved; | 24 UnmodifiableListView _unmodifiableRemoved; |
24 | 25 |
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
382 continue; | 383 continue; |
383 } | 384 } |
384 | 385 |
385 splices.addAll(calcSplices(list, splice.index, | 386 splices.addAll(calcSplices(list, splice.index, |
386 splice.index + splice.addedCount, splice._removed, 0, | 387 splice.index + splice.addedCount, splice._removed, 0, |
387 splice.removed.length)); | 388 splice.removed.length)); |
388 } | 389 } |
389 | 390 |
390 return splices; | 391 return splices; |
391 } | 392 } |
OLD | NEW |