| Index: tools/dom/src/WrappedList.dart
|
| diff --git a/tools/dom/src/WrappedList.dart b/tools/dom/src/WrappedList.dart
|
| index 4cd72260bd33423b45a0b643738576f187999898..c06e8dc923d8016355d1883c725f7ee6764dd1c6 100644
|
| --- a/tools/dom/src/WrappedList.dart
|
| +++ b/tools/dom/src/WrappedList.dart
|
| @@ -30,13 +30,13 @@ class _WrappedList<E extends Node> extends ListBase<E>
|
|
|
| // List APIs
|
|
|
| - E operator [](int index) => _list[index] as E;
|
| + E operator [](int index) => _downcast/*<Node, E>*/(_list[index]);
|
|
|
| void operator []=(int index, E value) { _list[index] = value; }
|
|
|
| set length(int newLength) { _list.length = newLength; }
|
|
|
| - void sort([int compare(E a, E b)]) { _list.sort((Node a, Node b) => compare(a as E, b as E)); }
|
| + void sort([int compare(E a, E b)]) { _list.sort((Node a, Node b) => compare(_downcast/*<Node, E>*/(a), _downcast/*<Node, E>*/(b))); }
|
|
|
| int indexOf(Object element, [int start = 0]) => _list.indexOf(element, start);
|
|
|
| @@ -44,7 +44,7 @@ class _WrappedList<E extends Node> extends ListBase<E>
|
|
|
| void insert(int index, E element) => _list.insert(index, element);
|
|
|
| - E removeAt(int index) => _list.removeAt(index) as E;
|
| + E removeAt(int index) => _downcast/*<Node, E>*/(_list.removeAt(index));
|
|
|
| void setRange(int start, int end, Iterable<E> iterable, [int skipCount = 0]) {
|
| _list.setRange(start, end, iterable, skipCount);
|
| @@ -66,7 +66,7 @@ class _WrappedList<E extends Node> extends ListBase<E>
|
| /**
|
| * Iterator wrapper for _WrappedList.
|
| */
|
| -class _WrappedIterator<E> implements Iterator<E> {
|
| +class _WrappedIterator<E extends Node> implements Iterator<E> {
|
| Iterator<Node> _iterator;
|
|
|
| _WrappedIterator(this._iterator);
|
| @@ -75,5 +75,8 @@ class _WrappedIterator<E> implements Iterator<E> {
|
| return _iterator.moveNext();
|
| }
|
|
|
| - E get current => _iterator.current as E;
|
| + E get current => _downcast/*<Node, E>*/(_iterator.current);
|
| }
|
| +
|
| +// ignore: STRONG_MODE_DOWN_CAST_COMPOSITE
|
| +/*=To*/ _downcast/*<From, To extends From>*/(dynamic /*=From*/ x) => x;
|
|
|