Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(140)

Unified Diff: pkg/dev_compiler/lib/js/common/dart_sdk.js

Issue 2544163002: Fix runtime strong mode error in ListMixin (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
Download patch
Index: pkg/dev_compiler/lib/js/common/dart_sdk.js
diff --git a/pkg/dev_compiler/lib/js/common/dart_sdk.js b/pkg/dev_compiler/lib/js/common/dart_sdk.js
index 503de63768532a11ccb5e5bd8515ce3ec7d791ad..e3d4b450a58b3601fba89afae8bd89e0441e35ab 100644
--- a/pkg/dev_compiler/lib/js/common/dart_sdk.js
+++ b/pkg/dev_compiler/lib/js/common/dart_sdk.js
@@ -5642,6 +5642,7 @@
});
_internal.POWERS_OF_TEN = dart.constList([1.0, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, 10000000.0, 100000000.0, 1000000000.0, 10000000000.0, 100000000000.0, 1000000000000.0, 10000000000000.0, 100000000000000.0, 1000000000000000.0, 10000000000000000.0, 100000000000000000.0, 1000000000000000000.0, 10000000000000000000.0, 100000000000000000000.0, 1e+21, 1e+22], core.double);
const _string = Symbol('_string');
+ const _filter = Symbol('_filter');
collection.ListMixin$ = dart.generic(E => {
let ListIteratorOfE = () => (ListIteratorOfE = dart.constFn(_internal.ListIterator$(E)))();
let VoidToE = () => (VoidToE = dart.constFn(dart.functionType(E, [])))();
@@ -5653,6 +5654,7 @@
let ListOfE = () => (ListOfE = dart.constFn(core.List$(E)))();
let SetOfE = () => (SetOfE = dart.constFn(core.Set$(E)))();
let IterableOfE = () => (IterableOfE = dart.constFn(core.Iterable$(E)))();
+ let JSArrayOfE = () => (JSArrayOfE = dart.constFn(_interceptors.JSArray$(E)))();
let ListMapViewOfE = () => (ListMapViewOfE = dart.constFn(_internal.ListMapView$(E)))();
let ReversedListIterableOfE = () => (ReversedListIterableOfE = dart.constFn(_internal.ReversedListIterable$(E)))();
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))();
@@ -5934,13 +5936,14 @@
return false;
}
removeWhere(test) {
- collection.ListMixin._filter(this, test, false);
+ this[_filter](test, false);
}
retainWhere(test) {
- collection.ListMixin._filter(this, test, true);
+ this[_filter](test, true);
}
- static _filter(source, test, retainMatching) {
- let retained = [];
+ [_filter](test, retainMatching) {
+ let source = this;
+ let retained = JSArrayOfE().of([]);
let length = source[dartx.length];
for (let i = 0; i < dart.notNull(length); i++) {
let element = source[dartx._get](i);
@@ -6202,6 +6205,7 @@
remove: dart.definiteFunctionType(core.bool, [core.Object]),
removeWhere: dart.definiteFunctionType(dart.void, [ETobool()]),
retainWhere: dart.definiteFunctionType(dart.void, [ETobool()]),
+ [_filter]: dart.definiteFunctionType(dart.void, [dynamicTobool(), core.bool]),
clear: dart.definiteFunctionType(dart.void, []),
removeLast: dart.definiteFunctionType(E, []),
sort: dart.definiteFunctionType(dart.void, [], [EAndEToint()]),
@@ -6219,9 +6223,7 @@
removeAt: dart.definiteFunctionType(E, [core.int]),
insertAll: dart.definiteFunctionType(dart.void, [core.int, IterableOfE()]),
setAll: dart.definiteFunctionType(dart.void, [core.int, IterableOfE()])
- }),
- statics: () => ({_filter: dart.definiteFunctionType(dart.void, [core.List, dynamicTobool(), core.bool])}),
- names: ['_filter']
+ })
});
dart.defineExtensionMembers(ListMixin, [
'elementAt',
@@ -27107,7 +27109,6 @@
});
collection._DoubleLinkedQueueSentinel = _DoubleLinkedQueueSentinel();
const _sentinel = Symbol('_sentinel');
- const _filter = Symbol('_filter');
collection.DoubleLinkedQueue$ = dart.generic(E => {
let _DoubleLinkedQueueSentinelOfE = () => (_DoubleLinkedQueueSentinelOfE = dart.constFn(collection._DoubleLinkedQueueSentinel$(E)))();
let DoubleLinkedQueueOfE = () => (DoubleLinkedQueueOfE = dart.constFn(collection.DoubleLinkedQueue$(E)))();

Powered by Google App Engine
This is Rietveld 408576698