Skip to content
This repository was archived by the owner on May 20, 2023. It is now read-only.

Commit e260aab

Browse files
srawlinsnshahan
authored andcommitted
Fix uses_bottom_as_dynamic ("fuzzy arrow") errors for ACX model libraries.
Using dynamic as bottom will become an error in Dart 2.0. dart-lang/sdk#29630 PiperOrigin-RevId: 182013886
1 parent 12ec7f2 commit e260aab

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

lib/model/selection/tree_selection_options.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ class TreeSelectionOptions<T> extends SelectionOptions<T>
3535
: _itemRenderer = itemRenderer ?? defaultItemRenderer,
3636
_itemsOptions = new Map<T, TreeSelectionOptionData<T>>.fromIterable(
3737
listOfOptions,
38-
key: (TreeSelectionOptionData<T> item) => item.value),
38+
key: (item) => (item as TreeSelectionOptionData<T>).value),
3939
super(const []) {
4040
_comparator = comparator ?? _defaultComparator;
4141
_parentToChildrenMap = _generateParentToChildrenMap(listOfOptions);

lib/model/ui/item_sorter.dart

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,17 @@ import 'package:angular_components/model/ui/has_renderer.dart';
1212
/// [itemRenderer] should return a unique string representation for each item.
1313
List<T> sortItems<T>(ItemRenderer<T> itemRenderer, Iterable<T> items,
1414
{bool ignoreCase: false}) {
15+
// TODO(google): Use new SplayTreeMap<String, T>.fromIterable<T>(...) when
16+
// generic constructors becomes available.
17+
var itemsMap = new SplayTreeMap<String, T>();
1518
if (ignoreCase) {
16-
return new SplayTreeMap<String, T>.fromIterable(items,
17-
key: (T item) => itemRenderer(item).toLowerCase()).values.toList();
19+
for (T item in items) {
20+
itemsMap[itemRenderer(item).toLowerCase()] = item;
21+
}
22+
} else {
23+
for (T item in items) {
24+
itemsMap[itemRenderer(item)] = item;
25+
}
1826
}
19-
return new SplayTreeMap<String, T>.fromIterable(items,
20-
key: (T item) => itemRenderer(item)).values.toList();
27+
return itemsMap.values.toList();
2128
}

0 commit comments

Comments
 (0)