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

Side by Side Diff: lib/runtime/dart/_internal.js

Issue 1153003003: fixes #40, extension methods for primitive types (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 var _internal = dart.defineLibrary(_internal, {}); 1 var _internal = dart.defineLibrary(_internal, {});
2 var core = dart.import(core); 2 var core = dart.import(core);
3 var collection = dart.import(collection); 3 var collection = dart.import(collection);
4 var math = dart.lazyImport(math); 4 var math = dart.lazyImport(math);
5 var _interceptors = dart.lazyImport(_interceptors); 5 var _interceptors = dart.lazyImport(_interceptors);
6 var _js_primitives = dart.lazyImport(_js_primitives); 6 var _js_primitives = dart.lazyImport(_js_primitives);
7 (function(exports, core, collection, math, _interceptors, _js_primitives) { 7 (function(exports, core, collection, math, _interceptors, _js_primitives) {
8 'use strict'; 8 'use strict';
9 class EfficientLength extends core.Object {} 9 class EfficientLength extends core.Object {}
10 let ListIterable$ = dart.generic(function(E) { 10 let ListIterable$ = dart.generic(function(E) {
11 class ListIterable extends collection.IterableBase$(E) { 11 class ListIterable extends collection.IterableBase$(E) {
12 ListIterable() { 12 ListIterable() {
13 super.IterableBase(); 13 super.IterableBase();
14 } 14 }
15 get [core.$iterator]() { 15 get iterator() {
16 return new (ListIterator$(E))(this); 16 return new (ListIterator$(E))(this);
17 } 17 }
18 [core.$forEach](action) { 18 forEach(action) {
19 dart.as(action, dart.functionType(dart.void, [E])); 19 dart.as(action, dart.functionType(dart.void, [E]));
20 let length = this[core.$length]; 20 let length = this.length;
21 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 21 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
22 action(this[core.$elementAt](i)); 22 action(this.elementAt(i));
23 if (length != this[core.$length]) { 23 if (length != this.length) {
24 throw new core.ConcurrentModificationError(this); 24 throw new core.ConcurrentModificationError(this);
25 } 25 }
26 } 26 }
27 } 27 }
28 get [core.$isEmpty]() { 28 get isEmpty() {
29 return this[core.$length] == 0; 29 return this.length == 0;
30 } 30 }
31 get [core.$first]() { 31 get first() {
32 if (this[core.$length] == 0) 32 if (this.length == 0)
33 throw IterableElementError.noElement(); 33 throw IterableElementError.noElement();
34 return this[core.$elementAt](0); 34 return this.elementAt(0);
35 } 35 }
36 get [core.$last]() { 36 get last() {
37 if (this[core.$length] == 0) 37 if (this.length == 0)
38 throw IterableElementError.noElement(); 38 throw IterableElementError.noElement();
39 return this[core.$elementAt](dart.notNull(this[core.$length]) - 1); 39 return this.elementAt(dart.notNull(this.length) - 1);
40 } 40 }
41 get [core.$single]() { 41 get single() {
42 if (this[core.$length] == 0) 42 if (this.length == 0)
43 throw IterableElementError.noElement(); 43 throw IterableElementError.noElement();
44 if (dart.notNull(this[core.$length]) > 1) 44 if (dart.notNull(this.length) > 1)
45 throw IterableElementError.tooMany(); 45 throw IterableElementError.tooMany();
46 return this[core.$elementAt](0); 46 return this.elementAt(0);
47 } 47 }
48 [core.$contains](element) { 48 contains(element) {
49 let length = this[core.$length]; 49 let length = this.length;
50 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 50 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
51 if (dart.equals(this[core.$elementAt](i), element)) 51 if (dart.equals(this.elementAt(i), element))
52 return true; 52 return true;
53 if (length != this[core.$length]) { 53 if (length != this.length) {
54 throw new core.ConcurrentModificationError(this); 54 throw new core.ConcurrentModificationError(this);
55 } 55 }
56 } 56 }
57 return false; 57 return false;
58 } 58 }
59 [core.$every](test) { 59 every(test) {
60 dart.as(test, dart.functionType(core.bool, [E])); 60 dart.as(test, dart.functionType(core.bool, [E]));
61 let length = this[core.$length]; 61 let length = this.length;
62 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 62 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
63 if (!dart.notNull(test(this[core.$elementAt](i)))) 63 if (!dart.notNull(test(this.elementAt(i))))
64 return false; 64 return false;
65 if (length != this[core.$length]) { 65 if (length != this.length) {
66 throw new core.ConcurrentModificationError(this); 66 throw new core.ConcurrentModificationError(this);
67 } 67 }
68 } 68 }
69 return true; 69 return true;
70 } 70 }
71 [core.$any](test) { 71 any(test) {
72 dart.as(test, dart.functionType(core.bool, [E])); 72 dart.as(test, dart.functionType(core.bool, [E]));
73 let length = this[core.$length]; 73 let length = this.length;
74 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 74 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
75 if (test(this[core.$elementAt](i))) 75 if (test(this.elementAt(i)))
76 return true; 76 return true;
77 if (length != this[core.$length]) { 77 if (length != this.length) {
78 throw new core.ConcurrentModificationError(this); 78 throw new core.ConcurrentModificationError(this);
79 } 79 }
80 } 80 }
81 return false; 81 return false;
82 } 82 }
83 [core.$firstWhere](test, opts) { 83 firstWhere(test, opts) {
84 dart.as(test, dart.functionType(core.bool, [E])); 84 dart.as(test, dart.functionType(core.bool, [E]));
85 let orElse = opts && 'orElse' in opts ? opts.orElse : null; 85 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
86 dart.as(orElse, dart.functionType(E, [])); 86 dart.as(orElse, dart.functionType(E, []));
87 let length = this[core.$length]; 87 let length = this.length;
88 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 88 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
89 let element = this[core.$elementAt](i); 89 let element = this.elementAt(i);
90 if (test(element)) 90 if (test(element))
91 return element; 91 return element;
92 if (length != this[core.$length]) { 92 if (length != this.length) {
93 throw new core.ConcurrentModificationError(this); 93 throw new core.ConcurrentModificationError(this);
94 } 94 }
95 } 95 }
96 if (orElse != null) 96 if (orElse != null)
97 return orElse(); 97 return orElse();
98 throw IterableElementError.noElement(); 98 throw IterableElementError.noElement();
99 } 99 }
100 [core.$lastWhere](test, opts) { 100 lastWhere(test, opts) {
101 dart.as(test, dart.functionType(core.bool, [E])); 101 dart.as(test, dart.functionType(core.bool, [E]));
102 let orElse = opts && 'orElse' in opts ? opts.orElse : null; 102 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
103 dart.as(orElse, dart.functionType(E, [])); 103 dart.as(orElse, dart.functionType(E, []));
104 let length = this[core.$length]; 104 let length = this.length;
105 for (let i = dart.notNull(length) - 1; dart.notNull(i) >= 0; i = dart.no tNull(i) - 1) { 105 for (let i = dart.notNull(length) - 1; dart.notNull(i) >= 0; i = dart.no tNull(i) - 1) {
106 let element = this[core.$elementAt](i); 106 let element = this.elementAt(i);
107 if (test(element)) 107 if (test(element))
108 return element; 108 return element;
109 if (length != this[core.$length]) { 109 if (length != this.length) {
110 throw new core.ConcurrentModificationError(this); 110 throw new core.ConcurrentModificationError(this);
111 } 111 }
112 } 112 }
113 if (orElse != null) 113 if (orElse != null)
114 return orElse(); 114 return orElse();
115 throw IterableElementError.noElement(); 115 throw IterableElementError.noElement();
116 } 116 }
117 [core.$singleWhere](test) { 117 singleWhere(test) {
118 dart.as(test, dart.functionType(core.bool, [E])); 118 dart.as(test, dart.functionType(core.bool, [E]));
119 let length = this[core.$length]; 119 let length = this.length;
120 let match = null; 120 let match = null;
121 let matchFound = false; 121 let matchFound = false;
122 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 122 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
123 let element = this[core.$elementAt](i); 123 let element = this.elementAt(i);
124 if (test(element)) { 124 if (test(element)) {
125 if (matchFound) { 125 if (matchFound) {
126 throw IterableElementError.tooMany(); 126 throw IterableElementError.tooMany();
127 } 127 }
128 matchFound = true; 128 matchFound = true;
129 match = element; 129 match = element;
130 } 130 }
131 if (length != this[core.$length]) { 131 if (length != this.length) {
132 throw new core.ConcurrentModificationError(this); 132 throw new core.ConcurrentModificationError(this);
133 } 133 }
134 } 134 }
135 if (matchFound) 135 if (matchFound)
136 return match; 136 return match;
137 throw IterableElementError.noElement(); 137 throw IterableElementError.noElement();
138 } 138 }
139 [core.$join](separator) { 139 join(separator) {
140 if (separator === void 0) 140 if (separator === void 0)
141 separator = ""; 141 separator = "";
142 let length = this[core.$length]; 142 let length = this.length;
143 if (!dart.notNull(separator.isEmpty)) { 143 if (!dart.notNull(separator[dartx.isEmpty])) {
144 if (length == 0) 144 if (length == 0)
145 return ""; 145 return "";
146 let first = `${this[core.$elementAt](0)}`; 146 let first = `${this.elementAt(0)}`;
147 if (length != this[core.$length]) { 147 if (length != this.length) {
148 throw new core.ConcurrentModificationError(this); 148 throw new core.ConcurrentModificationError(this);
149 } 149 }
150 let buffer = new core.StringBuffer(first); 150 let buffer = new core.StringBuffer(first);
151 for (let i = 1; dart.notNull(i) < dart.notNull(length); i = dart.notNu ll(i) + 1) { 151 for (let i = 1; dart.notNull(i) < dart.notNull(length); i = dart.notNu ll(i) + 1) {
152 buffer.write(separator); 152 buffer.write(separator);
153 buffer.write(this[core.$elementAt](i)); 153 buffer.write(this.elementAt(i));
154 if (length != this[core.$length]) { 154 if (length != this.length) {
155 throw new core.ConcurrentModificationError(this); 155 throw new core.ConcurrentModificationError(this);
156 } 156 }
157 } 157 }
158 return dart.toString(buffer); 158 return dart.toString(buffer);
159 } else { 159 } else {
160 let buffer = new core.StringBuffer(); 160 let buffer = new core.StringBuffer();
161 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNu ll(i) + 1) { 161 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNu ll(i) + 1) {
162 buffer.write(this[core.$elementAt](i)); 162 buffer.write(this.elementAt(i));
163 if (length != this[core.$length]) { 163 if (length != this.length) {
164 throw new core.ConcurrentModificationError(this); 164 throw new core.ConcurrentModificationError(this);
165 } 165 }
166 } 166 }
167 return dart.toString(buffer); 167 return dart.toString(buffer);
168 } 168 }
169 } 169 }
170 [core.$where](test) { 170 where(test) {
171 dart.as(test, dart.functionType(core.bool, [E])); 171 dart.as(test, dart.functionType(core.bool, [E]));
172 return super[core.$where](test); 172 return super.where(test);
173 } 173 }
174 [core.$map](f) { 174 map(f) {
175 dart.as(f, dart.functionType(core.Object, [E])); 175 dart.as(f, dart.functionType(core.Object, [E]));
176 return new MappedListIterable(this, f); 176 return new MappedListIterable(this, f);
177 } 177 }
178 [core.$reduce](combine) { 178 reduce(combine) {
179 dart.as(combine, dart.functionType(E, [dart.bottom, E])); 179 dart.as(combine, dart.functionType(E, [dart.bottom, E]));
180 let length = this[core.$length]; 180 let length = this.length;
181 if (length == 0) 181 if (length == 0)
182 throw IterableElementError.noElement(); 182 throw IterableElementError.noElement();
183 let value = this[core.$elementAt](0); 183 let value = this.elementAt(0);
184 for (let i = 1; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 184 for (let i = 1; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
185 value = dart.dcall(combine, value, this[core.$elementAt](i)); 185 value = dart.dcall(combine, value, this.elementAt(i));
186 if (length != this[core.$length]) { 186 if (length != this.length) {
187 throw new core.ConcurrentModificationError(this); 187 throw new core.ConcurrentModificationError(this);
188 } 188 }
189 } 189 }
190 return value; 190 return value;
191 } 191 }
192 [core.$fold](initialValue, combine) { 192 fold(initialValue, combine) {
193 dart.as(combine, dart.functionType(core.Object, [dart.bottom, E])); 193 dart.as(combine, dart.functionType(core.Object, [dart.bottom, E]));
194 let value = initialValue; 194 let value = initialValue;
195 let length = this[core.$length]; 195 let length = this.length;
196 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 196 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
197 value = dart.dcall(combine, value, this[core.$elementAt](i)); 197 value = dart.dcall(combine, value, this.elementAt(i));
198 if (length != this[core.$length]) { 198 if (length != this.length) {
199 throw new core.ConcurrentModificationError(this); 199 throw new core.ConcurrentModificationError(this);
200 } 200 }
201 } 201 }
202 return value; 202 return value;
203 } 203 }
204 [core.$skip](count) { 204 skip(count) {
205 return new (SubListIterable$(E))(this, count, null); 205 return new (SubListIterable$(E))(this, count, null);
206 } 206 }
207 [core.$skipWhile](test) { 207 skipWhile(test) {
208 dart.as(test, dart.functionType(core.bool, [E])); 208 dart.as(test, dart.functionType(core.bool, [E]));
209 return super[core.$skipWhile](test); 209 return super.skipWhile(test);
210 } 210 }
211 [core.$take](count) { 211 take(count) {
212 return new (SubListIterable$(E))(this, 0, count); 212 return new (SubListIterable$(E))(this, 0, count);
213 } 213 }
214 [core.$takeWhile](test) { 214 takeWhile(test) {
215 dart.as(test, dart.functionType(core.bool, [E])); 215 dart.as(test, dart.functionType(core.bool, [E]));
216 return super[core.$takeWhile](test); 216 return super.takeWhile(test);
217 } 217 }
218 [core.$toList](opts) { 218 toList(opts) {
219 let growable = opts && 'growable' in opts ? opts.growable : true; 219 let growable = opts && 'growable' in opts ? opts.growable : true;
220 let result = null; 220 let result = null;
221 if (growable) { 221 if (growable) {
222 result = core.List$(E).new(); 222 result = core.List$(E).new();
223 result[core.$length] = this[core.$length]; 223 result.length = this.length;
224 } else { 224 } else {
225 result = core.List$(E).new(this[core.$length]); 225 result = core.List$(E).new(this.length);
226 } 226 }
227 for (let i = 0; dart.notNull(i) < dart.notNull(this[core.$length]); i = dart.notNull(i) + 1) { 227 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
228 result[core.$set](i, this[core.$elementAt](i)); 228 result[dartx.set](i, this.elementAt(i));
229 } 229 }
230 return result; 230 return result;
231 } 231 }
232 [core.$toSet]() { 232 toSet() {
233 let result = core.Set$(E).new(); 233 let result = core.Set$(E).new();
234 for (let i = 0; dart.notNull(i) < dart.notNull(this[core.$length]); i = dart.notNull(i) + 1) { 234 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
235 result.add(this[core.$elementAt](i)); 235 result.add(this.elementAt(i));
236 } 236 }
237 return result; 237 return result;
238 } 238 }
239 } 239 }
240 ListIterable[dart.implements] = () => [EfficientLength]; 240 ListIterable[dart.implements] = () => [EfficientLength];
241 dart.defineExtensionMembers(ListIterable, [
242 'forEach',
243 'contains',
244 'every',
245 'any',
246 'firstWhere',
247 'lastWhere',
248 'singleWhere',
249 'join',
250 'where',
251 'map',
252 'reduce',
253 'fold',
254 'skip',
255 'skipWhile',
256 'take',
257 'takeWhile',
258 'toList',
259 'toSet',
260 'iterator',
261 'isEmpty',
262 'first',
263 'last',
264 'single'
265 ]);
241 dart.setSignature(ListIterable, { 266 dart.setSignature(ListIterable, {
242 constructors: () => ({ListIterable: [ListIterable$(E), []]}), 267 constructors: () => ({ListIterable: [ListIterable$(E), []]}),
243 methods: () => ({ 268 methods: () => ({
244 [core.$forEach]: [dart.void, [dart.functionType(dart.void, [E])]], 269 forEach: [dart.void, [dart.functionType(dart.void, [E])]],
245 [core.$every]: [core.bool, [dart.functionType(core.bool, [E])]], 270 every: [core.bool, [dart.functionType(core.bool, [E])]],
246 [core.$any]: [core.bool, [dart.functionType(core.bool, [E])]], 271 any: [core.bool, [dart.functionType(core.bool, [E])]],
247 [core.$firstWhere]: [E, [dart.functionType(core.bool, [E])], {orElse: da rt.functionType(E, [])}], 272 firstWhere: [E, [dart.functionType(core.bool, [E])], {orElse: dart.funct ionType(E, [])}],
248 [core.$lastWhere]: [E, [dart.functionType(core.bool, [E])], {orElse: dar t.functionType(E, [])}], 273 lastWhere: [E, [dart.functionType(core.bool, [E])], {orElse: dart.functi onType(E, [])}],
249 [core.$singleWhere]: [E, [dart.functionType(core.bool, [E])]], 274 singleWhere: [E, [dart.functionType(core.bool, [E])]],
250 [core.$where]: [core.Iterable$(E), [dart.functionType(core.bool, [E])]], 275 where: [core.Iterable$(E), [dart.functionType(core.bool, [E])]],
251 [core.$map]: [core.Iterable, [dart.functionType(core.Object, [E])]], 276 map: [core.Iterable, [dart.functionType(core.Object, [E])]],
252 [core.$reduce]: [E, [dart.functionType(E, [dart.bottom, E])]], 277 reduce: [E, [dart.functionType(E, [dart.bottom, E])]],
253 [core.$fold]: [core.Object, [core.Object, dart.functionType(core.Object, [dart.bottom, E])]], 278 fold: [core.Object, [core.Object, dart.functionType(core.Object, [dart.b ottom, E])]],
254 [core.$skip]: [core.Iterable$(E), [core.int]], 279 skip: [core.Iterable$(E), [core.int]],
255 [core.$skipWhile]: [core.Iterable$(E), [dart.functionType(core.bool, [E] )]], 280 skipWhile: [core.Iterable$(E), [dart.functionType(core.bool, [E])]],
256 [core.$take]: [core.Iterable$(E), [core.int]], 281 take: [core.Iterable$(E), [core.int]],
257 [core.$takeWhile]: [core.Iterable$(E), [dart.functionType(core.bool, [E] )]], 282 takeWhile: [core.Iterable$(E), [dart.functionType(core.bool, [E])]],
258 [core.$toList]: [core.List$(E), [], {growable: core.bool}], 283 toList: [core.List$(E), [], {growable: core.bool}],
259 [core.$toSet]: [core.Set$(E), []] 284 toSet: [core.Set$(E), []]
260 }) 285 })
261 }); 286 });
262 return ListIterable; 287 return ListIterable;
263 }); 288 });
264 let ListIterable = ListIterable$(); 289 let ListIterable = ListIterable$();
265 let _iterable = dart.JsSymbol('_iterable'); 290 let _iterable = dart.JsSymbol('_iterable');
266 let _start = dart.JsSymbol('_start'); 291 let _start = dart.JsSymbol('_start');
267 let _endOrLength = dart.JsSymbol('_endOrLength'); 292 let _endOrLength = dart.JsSymbol('_endOrLength');
268 let _endIndex = dart.JsSymbol('_endIndex'); 293 let _endIndex = dart.JsSymbol('_endIndex');
269 let _startIndex = dart.JsSymbol('_startIndex'); 294 let _startIndex = dart.JsSymbol('_startIndex');
270 let SubListIterable$ = dart.generic(function(E) { 295 let SubListIterable$ = dart.generic(function(E) {
271 class SubListIterable extends ListIterable$(E) { 296 class SubListIterable extends ListIterable$(E) {
272 SubListIterable(iterable, start, endOrLength) { 297 SubListIterable(iterable, start, endOrLength) {
273 this[_iterable] = iterable; 298 this[_iterable] = iterable;
274 this[_start] = start; 299 this[_start] = start;
275 this[_endOrLength] = endOrLength; 300 this[_endOrLength] = endOrLength;
276 super.ListIterable(); 301 super.ListIterable();
277 core.RangeError.checkNotNegative(this[_start], "start"); 302 core.RangeError.checkNotNegative(this[_start], "start");
278 if (this[_endOrLength] != null) { 303 if (this[_endOrLength] != null) {
279 core.RangeError.checkNotNegative(this[_endOrLength], "end"); 304 core.RangeError.checkNotNegative(this[_endOrLength], "end");
280 if (dart.notNull(this[_start]) > dart.notNull(this[_endOrLength])) { 305 if (dart.notNull(this[_start]) > dart.notNull(this[_endOrLength])) {
281 throw new core.RangeError.range(this[_start], 0, this[_endOrLength], "start"); 306 throw new core.RangeError.range(this[_start], 0, this[_endOrLength], "start");
282 } 307 }
283 } 308 }
284 } 309 }
285 get [_endIndex]() { 310 get [_endIndex]() {
286 let length = this[_iterable][core.$length]; 311 let length = this[_iterable].length;
287 if (this[_endOrLength] == null || dart.notNull(this[_endOrLength]) > dar t.notNull(length)) 312 if (this[_endOrLength] == null || dart.notNull(this[_endOrLength]) > dar t.notNull(length))
288 return length; 313 return length;
289 return this[_endOrLength]; 314 return this[_endOrLength];
290 } 315 }
291 get [_startIndex]() { 316 get [_startIndex]() {
292 let length = this[_iterable][core.$length]; 317 let length = this[_iterable].length;
293 if (dart.notNull(this[_start]) > dart.notNull(length)) 318 if (dart.notNull(this[_start]) > dart.notNull(length))
294 return length; 319 return length;
295 return this[_start]; 320 return this[_start];
296 } 321 }
297 get [core.$length]() { 322 get length() {
298 let length = this[_iterable][core.$length]; 323 let length = this[_iterable].length;
299 if (dart.notNull(this[_start]) >= dart.notNull(length)) 324 if (dart.notNull(this[_start]) >= dart.notNull(length))
300 return 0; 325 return 0;
301 if (this[_endOrLength] == null || dart.notNull(this[_endOrLength]) >= da rt.notNull(length)) { 326 if (this[_endOrLength] == null || dart.notNull(this[_endOrLength]) >= da rt.notNull(length)) {
302 return dart.notNull(length) - dart.notNull(this[_start]); 327 return dart.notNull(length) - dart.notNull(this[_start]);
303 } 328 }
304 return dart.notNull(this[_endOrLength]) - dart.notNull(this[_start]); 329 return dart.notNull(this[_endOrLength]) - dart.notNull(this[_start]);
305 } 330 }
306 [core.$elementAt](index) { 331 elementAt(index) {
307 let realIndex = dart.notNull(this[_startIndex]) + dart.notNull(index); 332 let realIndex = dart.notNull(this[_startIndex]) + dart.notNull(index);
308 if (dart.notNull(index) < 0 || dart.notNull(realIndex) >= dart.notNull(t his[_endIndex])) { 333 if (dart.notNull(index) < 0 || dart.notNull(realIndex) >= dart.notNull(t his[_endIndex])) {
309 throw core.RangeError.index(index, this, "index"); 334 throw core.RangeError.index(index, this, "index");
310 } 335 }
311 return this[_iterable][core.$elementAt](realIndex); 336 return this[_iterable][dartx.elementAt](realIndex);
312 } 337 }
313 [core.$skip](count) { 338 skip(count) {
314 core.RangeError.checkNotNegative(count, "count"); 339 core.RangeError.checkNotNegative(count, "count");
315 let newStart = dart.notNull(this[_start]) + dart.notNull(count); 340 let newStart = dart.notNull(this[_start]) + dart.notNull(count);
316 if (this[_endOrLength] != null && dart.notNull(newStart) >= dart.notNull (this[_endOrLength])) { 341 if (this[_endOrLength] != null && dart.notNull(newStart) >= dart.notNull (this[_endOrLength])) {
317 return new (EmptyIterable$(E))(); 342 return new (EmptyIterable$(E))();
318 } 343 }
319 return new (SubListIterable$(E))(this[_iterable], newStart, this[_endOrL ength]); 344 return new (SubListIterable$(E))(this[_iterable], newStart, this[_endOrL ength]);
320 } 345 }
321 [core.$take](count) { 346 take(count) {
322 core.RangeError.checkNotNegative(count, "count"); 347 core.RangeError.checkNotNegative(count, "count");
323 if (this[_endOrLength] == null) { 348 if (this[_endOrLength] == null) {
324 return new (SubListIterable$(E))(this[_iterable], this[_start], dart.n otNull(this[_start]) + dart.notNull(count)); 349 return new (SubListIterable$(E))(this[_iterable], this[_start], dart.n otNull(this[_start]) + dart.notNull(count));
325 } else { 350 } else {
326 let newEnd = dart.notNull(this[_start]) + dart.notNull(count); 351 let newEnd = dart.notNull(this[_start]) + dart.notNull(count);
327 if (dart.notNull(this[_endOrLength]) < dart.notNull(newEnd)) 352 if (dart.notNull(this[_endOrLength]) < dart.notNull(newEnd))
328 return this; 353 return this;
329 return new (SubListIterable$(E))(this[_iterable], this[_start], newEnd ); 354 return new (SubListIterable$(E))(this[_iterable], this[_start], newEnd );
330 } 355 }
331 } 356 }
332 [core.$toList](opts) { 357 toList(opts) {
333 let growable = opts && 'growable' in opts ? opts.growable : true; 358 let growable = opts && 'growable' in opts ? opts.growable : true;
334 let start = this[_start]; 359 let start = this[_start];
335 let end = this[_iterable][core.$length]; 360 let end = this[_iterable].length;
336 if (this[_endOrLength] != null && dart.notNull(this[_endOrLength]) < dar t.notNull(end)) 361 if (this[_endOrLength] != null && dart.notNull(this[_endOrLength]) < dar t.notNull(end))
337 end = this[_endOrLength]; 362 end = this[_endOrLength];
338 let length = dart.notNull(end) - dart.notNull(start); 363 let length = dart.notNull(end) - dart.notNull(start);
339 if (dart.notNull(length) < 0) 364 if (dart.notNull(length) < 0)
340 length = 0; 365 length = 0;
341 let result = growable ? (() => { 366 let result = growable ? (() => {
342 let _ = core.List$(E).new(); 367 let _ = core.List$(E).new();
343 _[core.$length] = length; 368 _.length = length;
344 return _; 369 return _;
345 })() : core.List$(E).new(length); 370 })() : core.List$(E).new(length);
346 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 371 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
347 result[core.$set](i, this[_iterable][core.$elementAt](dart.notNull(sta rt) + dart.notNull(i))); 372 result[dartx.set](i, this[_iterable][dartx.elementAt](dart.notNull(sta rt) + dart.notNull(i)));
348 if (dart.notNull(this[_iterable][core.$length]) < dart.notNull(end)) 373 if (dart.notNull(this[_iterable].length) < dart.notNull(end))
349 throw new core.ConcurrentModificationError(this); 374 throw new core.ConcurrentModificationError(this);
350 } 375 }
351 return dart.as(result, core.List$(E)); 376 return dart.as(result, core.List$(E));
352 } 377 }
353 } 378 }
354 dart.setSignature(SubListIterable, { 379 dart.setSignature(SubListIterable, {
355 constructors: () => ({SubListIterable: [SubListIterable$(E), [core.Iterabl e$(E), core.int, core.int]]}), 380 constructors: () => ({SubListIterable: [SubListIterable$(E), [core.Iterabl e$(E), core.int, core.int]]}),
356 methods: () => ({ 381 methods: () => ({
357 [core.$elementAt]: [E, [core.int]], 382 elementAt: [E, [core.int]],
358 [core.$skip]: [core.Iterable$(E), [core.int]], 383 skip: [core.Iterable$(E), [core.int]],
359 [core.$take]: [core.Iterable$(E), [core.int]], 384 take: [core.Iterable$(E), [core.int]],
360 [core.$toList]: [core.List$(E), [], {growable: core.bool}] 385 toList: [core.List$(E), [], {growable: core.bool}]
361 }) 386 })
362 }); 387 });
363 return SubListIterable; 388 return SubListIterable;
364 }); 389 });
365 let SubListIterable = SubListIterable$(); 390 let SubListIterable = SubListIterable$();
366 let _length = dart.JsSymbol('_length'); 391 let _length = dart.JsSymbol('_length');
367 let _index = dart.JsSymbol('_index'); 392 let _index = dart.JsSymbol('_index');
368 let _current = dart.JsSymbol('_current'); 393 let _current = dart.JsSymbol('_current');
369 let ListIterator$ = dart.generic(function(E) { 394 let ListIterator$ = dart.generic(function(E) {
370 class ListIterator extends core.Object { 395 class ListIterator extends core.Object {
371 ListIterator(iterable) { 396 ListIterator(iterable) {
372 this[_iterable] = iterable; 397 this[_iterable] = iterable;
373 this[_length] = iterable[core.$length]; 398 this[_length] = iterable.length;
374 this[_index] = 0; 399 this[_index] = 0;
375 this[_current] = null; 400 this[_current] = null;
376 } 401 }
377 get current() { 402 get current() {
378 return this[_current]; 403 return this[_current];
379 } 404 }
380 moveNext() { 405 moveNext() {
381 let length = this[_iterable][core.$length]; 406 let length = this[_iterable].length;
382 if (this[_length] != length) { 407 if (this[_length] != length) {
383 throw new core.ConcurrentModificationError(this[_iterable]); 408 throw new core.ConcurrentModificationError(this[_iterable]);
384 } 409 }
385 if (dart.notNull(this[_index]) >= dart.notNull(length)) { 410 if (dart.notNull(this[_index]) >= dart.notNull(length)) {
386 this[_current] = null; 411 this[_current] = null;
387 return false; 412 return false;
388 } 413 }
389 this[_current] = this[_iterable][core.$elementAt](this[_index]); 414 this[_current] = this[_iterable][dartx.elementAt](this[_index]);
390 this[_index] = dart.notNull(this[_index]) + 1; 415 this[_index] = dart.notNull(this[_index]) + 1;
391 return true; 416 return true;
392 } 417 }
393 } 418 }
394 ListIterator[dart.implements] = () => [core.Iterator$(E)]; 419 ListIterator[dart.implements] = () => [core.Iterator$(E)];
395 dart.setSignature(ListIterator, { 420 dart.setSignature(ListIterator, {
396 constructors: () => ({ListIterator: [ListIterator$(E), [core.Iterable$(E)] ]}), 421 constructors: () => ({ListIterator: [ListIterator$(E), [core.Iterable$(E)] ]}),
397 methods: () => ({moveNext: [core.bool, []]}) 422 methods: () => ({moveNext: [core.bool, []]})
398 }); 423 });
399 return ListIterator; 424 return ListIterator;
(...skipping 11 matching lines...) Expand all
411 if (dart.is(iterable, EfficientLength)) { 436 if (dart.is(iterable, EfficientLength)) {
412 return new (EfficientLengthMappedIterable$(S, T))(iterable, func); 437 return new (EfficientLengthMappedIterable$(S, T))(iterable, func);
413 } 438 }
414 return new (MappedIterable$(S, T))._(dart.as(iterable, core.Iterable$(S) ), func); 439 return new (MappedIterable$(S, T))._(dart.as(iterable, core.Iterable$(S) ), func);
415 } 440 }
416 _(iterable, f) { 441 _(iterable, f) {
417 this[_iterable] = iterable; 442 this[_iterable] = iterable;
418 this[_f] = f; 443 this[_f] = f;
419 super.IterableBase(); 444 super.IterableBase();
420 } 445 }
421 get [core.$iterator]() { 446 get iterator() {
422 return new (MappedIterator$(S, T))(this[_iterable][core.$iterator], this [_f]); 447 return new (MappedIterator$(S, T))(this[_iterable][dartx.iterator], this [_f]);
423 } 448 }
424 get [core.$length]() { 449 get length() {
425 return this[_iterable][core.$length]; 450 return this[_iterable].length;
426 } 451 }
427 get [core.$isEmpty]() { 452 get isEmpty() {
428 return this[_iterable][core.$isEmpty]; 453 return this[_iterable][dartx.isEmpty];
429 } 454 }
430 get [core.$first]() { 455 get first() {
431 return this[_f](this[_iterable][core.$first]); 456 return this[_f](this[_iterable][dartx.first]);
432 } 457 }
433 get [core.$last]() { 458 get last() {
434 return this[_f](this[_iterable][core.$last]); 459 return this[_f](this[_iterable][dartx.last]);
435 } 460 }
436 get [core.$single]() { 461 get single() {
437 return this[_f](this[_iterable][core.$single]); 462 return this[_f](this[_iterable][dartx.single]);
438 } 463 }
439 [core.$elementAt](index) { 464 elementAt(index) {
440 return this[_f](this[_iterable][core.$elementAt](index)); 465 return this[_f](this[_iterable][dartx.elementAt](index));
441 } 466 }
442 } 467 }
443 dart.defineNamedConstructor(MappedIterable, '_'); 468 dart.defineNamedConstructor(MappedIterable, '_');
444 dart.setSignature(MappedIterable, { 469 dart.setSignature(MappedIterable, {
445 constructors: () => ({ 470 constructors: () => ({
446 new: [MappedIterable$(S, T), [core.Iterable, dart.functionType(T, [S])]] , 471 new: [MappedIterable$(S, T), [core.Iterable, dart.functionType(T, [S])]] ,
447 _: [MappedIterable$(S, T), [core.Iterable$(S), dart.functionType(T, [S]) ]] 472 _: [MappedIterable$(S, T), [core.Iterable$(S), dart.functionType(T, [S]) ]]
448 }), 473 }),
449 methods: () => ({[core.$elementAt]: [T, [core.int]]}) 474 methods: () => ({elementAt: [T, [core.int]]})
450 }); 475 });
451 return MappedIterable; 476 return MappedIterable;
452 }); 477 });
453 let MappedIterable = MappedIterable$(); 478 let MappedIterable = MappedIterable$();
454 let EfficientLengthMappedIterable$ = dart.generic(function(S, T) { 479 let EfficientLengthMappedIterable$ = dart.generic(function(S, T) {
455 class EfficientLengthMappedIterable extends MappedIterable$(S, T) { 480 class EfficientLengthMappedIterable extends MappedIterable$(S, T) {
456 EfficientLengthMappedIterable(iterable, func) { 481 EfficientLengthMappedIterable(iterable, func) {
457 super._(dart.as(iterable, core.Iterable$(S)), func); 482 super._(dart.as(iterable, core.Iterable$(S)), func);
458 } 483 }
459 } 484 }
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
492 }); 517 });
493 let MappedIterator = MappedIterator$(); 518 let MappedIterator = MappedIterator$();
494 let _source = dart.JsSymbol('_source'); 519 let _source = dart.JsSymbol('_source');
495 let MappedListIterable$ = dart.generic(function(S, T) { 520 let MappedListIterable$ = dart.generic(function(S, T) {
496 class MappedListIterable extends ListIterable$(T) { 521 class MappedListIterable extends ListIterable$(T) {
497 MappedListIterable(source, f) { 522 MappedListIterable(source, f) {
498 this[_source] = source; 523 this[_source] = source;
499 this[_f] = f; 524 this[_f] = f;
500 super.ListIterable(); 525 super.ListIterable();
501 } 526 }
502 get [core.$length]() { 527 get length() {
503 return this[_source][core.$length]; 528 return this[_source].length;
504 } 529 }
505 [core.$elementAt](index) { 530 elementAt(index) {
506 return this[_f](this[_source][core.$elementAt](index)); 531 return this[_f](this[_source][dartx.elementAt](index));
507 } 532 }
508 } 533 }
509 MappedListIterable[dart.implements] = () => [EfficientLength]; 534 MappedListIterable[dart.implements] = () => [EfficientLength];
535 dart.defineExtensionMembers(MappedListIterable, ['elementAt', 'length']);
510 dart.setSignature(MappedListIterable, { 536 dart.setSignature(MappedListIterable, {
511 constructors: () => ({MappedListIterable: [MappedListIterable$(S, T), [cor e.Iterable$(S), dart.functionType(T, [S])]]}), 537 constructors: () => ({MappedListIterable: [MappedListIterable$(S, T), [cor e.Iterable$(S), dart.functionType(T, [S])]]}),
512 methods: () => ({[core.$elementAt]: [T, [core.int]]}) 538 methods: () => ({elementAt: [T, [core.int]]})
513 }); 539 });
514 return MappedListIterable; 540 return MappedListIterable;
515 }); 541 });
516 let MappedListIterable = MappedListIterable$(); 542 let MappedListIterable = MappedListIterable$();
517 let _ElementPredicate$ = dart.generic(function(E) { 543 let _ElementPredicate$ = dart.generic(function(E) {
518 let _ElementPredicate = dart.typedef('_ElementPredicate', () => dart.functio nType(core.bool, [E])); 544 let _ElementPredicate = dart.typedef('_ElementPredicate', () => dart.functio nType(core.bool, [E]));
519 return _ElementPredicate; 545 return _ElementPredicate;
520 }); 546 });
521 let _ElementPredicate = _ElementPredicate$(); 547 let _ElementPredicate = _ElementPredicate$();
522 let WhereIterable$ = dart.generic(function(E) { 548 let WhereIterable$ = dart.generic(function(E) {
523 class WhereIterable extends collection.IterableBase$(E) { 549 class WhereIterable extends collection.IterableBase$(E) {
524 WhereIterable(iterable, f) { 550 WhereIterable(iterable, f) {
525 this[_iterable] = iterable; 551 this[_iterable] = iterable;
526 this[_f] = f; 552 this[_f] = f;
527 super.IterableBase(); 553 super.IterableBase();
528 } 554 }
529 get [core.$iterator]() { 555 get iterator() {
530 return new (WhereIterator$(E))(this[_iterable][core.$iterator], this[_f] ); 556 return new (WhereIterator$(E))(this[_iterable][dartx.iterator], this[_f] );
531 } 557 }
532 } 558 }
533 dart.setSignature(WhereIterable, { 559 dart.setSignature(WhereIterable, {
534 constructors: () => ({WhereIterable: [WhereIterable$(E), [core.Iterable$(E ), dart.functionType(core.bool, [E])]]}) 560 constructors: () => ({WhereIterable: [WhereIterable$(E), [core.Iterable$(E ), dart.functionType(core.bool, [E])]]})
535 }); 561 });
536 return WhereIterable; 562 return WhereIterable;
537 }); 563 });
538 let WhereIterable = WhereIterable$(); 564 let WhereIterable = WhereIterable$();
539 let WhereIterator$ = dart.generic(function(E) { 565 let WhereIterator$ = dart.generic(function(E) {
540 class WhereIterator extends core.Iterator$(E) { 566 class WhereIterator extends core.Iterator$(E) {
(...skipping 25 matching lines...) Expand all
566 return _ExpandFunction; 592 return _ExpandFunction;
567 }); 593 });
568 let _ExpandFunction = _ExpandFunction$(); 594 let _ExpandFunction = _ExpandFunction$();
569 let ExpandIterable$ = dart.generic(function(S, T) { 595 let ExpandIterable$ = dart.generic(function(S, T) {
570 class ExpandIterable extends collection.IterableBase$(T) { 596 class ExpandIterable extends collection.IterableBase$(T) {
571 ExpandIterable(iterable, f) { 597 ExpandIterable(iterable, f) {
572 this[_iterable] = iterable; 598 this[_iterable] = iterable;
573 this[_f] = f; 599 this[_f] = f;
574 super.IterableBase(); 600 super.IterableBase();
575 } 601 }
576 get [core.$iterator]() { 602 get iterator() {
577 return new (ExpandIterator$(S, T))(this[_iterable][core.$iterator], dart .as(this[_f], __CastType0)); 603 return new (ExpandIterator$(S, T))(this[_iterable][dartx.iterator], dart .as(this[_f], __CastType0));
578 } 604 }
579 } 605 }
580 dart.setSignature(ExpandIterable, { 606 dart.setSignature(ExpandIterable, {
581 constructors: () => ({ExpandIterable: [ExpandIterable$(S, T), [core.Iterab le$(S), dart.functionType(core.Iterable$(T), [S])]]}) 607 constructors: () => ({ExpandIterable: [ExpandIterable$(S, T), [core.Iterab le$(S), dart.functionType(core.Iterable$(T), [S])]]})
582 }); 608 });
583 return ExpandIterable; 609 return ExpandIterable;
584 }); 610 });
585 let ExpandIterable = ExpandIterable$(); 611 let ExpandIterable = ExpandIterable$();
586 let _currentExpansion = dart.JsSymbol('_currentExpansion'); 612 let _currentExpansion = dart.JsSymbol('_currentExpansion');
587 let _nextExpansion = dart.JsSymbol('_nextExpansion'); 613 let _nextExpansion = dart.JsSymbol('_nextExpansion');
588 let ExpandIterator$ = dart.generic(function(S, T) { 614 let ExpandIterator$ = dart.generic(function(S, T) {
589 class ExpandIterator extends core.Object { 615 class ExpandIterator extends core.Object {
590 ExpandIterator(iterator, f) { 616 ExpandIterator(iterator, f) {
591 this[_iterator] = iterator; 617 this[_iterator] = iterator;
592 this[_f] = f; 618 this[_f] = f;
593 this[_currentExpansion] = dart.const(new (EmptyIterator$(T))()); 619 this[_currentExpansion] = dart.const(new (EmptyIterator$(T))());
594 this[_current] = null; 620 this[_current] = null;
595 } 621 }
596 [_nextExpansion]() {} 622 [_nextExpansion]() {}
597 get current() { 623 get current() {
598 return this[_current]; 624 return this[_current];
599 } 625 }
600 moveNext() { 626 moveNext() {
601 if (this[_currentExpansion] == null) 627 if (this[_currentExpansion] == null)
602 return false; 628 return false;
603 while (!dart.notNull(this[_currentExpansion].moveNext())) { 629 while (!dart.notNull(this[_currentExpansion].moveNext())) {
604 this[_current] = null; 630 this[_current] = null;
605 if (this[_iterator].moveNext()) { 631 if (this[_iterator].moveNext()) {
606 this[_currentExpansion] = null; 632 this[_currentExpansion] = null;
607 this[_currentExpansion] = dart.as(dart.dcall(this[_f], this[_iterato r].current)[core.$iterator], core.Iterator$(T)); 633 this[_currentExpansion] = dart.as(dart.dcall(this[_f], this[_iterato r].current)[dartx.iterator], core.Iterator$(T));
608 } else { 634 } else {
609 return false; 635 return false;
610 } 636 }
611 } 637 }
612 this[_current] = this[_currentExpansion].current; 638 this[_current] = this[_currentExpansion].current;
613 return true; 639 return true;
614 } 640 }
615 } 641 }
616 ExpandIterator[dart.implements] = () => [core.Iterator$(T)]; 642 ExpandIterator[dart.implements] = () => [core.Iterator$(T)];
617 dart.setSignature(ExpandIterator, { 643 dart.setSignature(ExpandIterator, {
(...skipping 16 matching lines...) Expand all
634 if (dart.is(iterable, EfficientLength)) { 660 if (dart.is(iterable, EfficientLength)) {
635 return new (EfficientLengthTakeIterable$(E))(iterable, takeCount); 661 return new (EfficientLengthTakeIterable$(E))(iterable, takeCount);
636 } 662 }
637 return new (TakeIterable$(E))._(iterable, takeCount); 663 return new (TakeIterable$(E))._(iterable, takeCount);
638 } 664 }
639 _(iterable, takeCount) { 665 _(iterable, takeCount) {
640 this[_iterable] = iterable; 666 this[_iterable] = iterable;
641 this[_takeCount] = takeCount; 667 this[_takeCount] = takeCount;
642 super.IterableBase(); 668 super.IterableBase();
643 } 669 }
644 get [core.$iterator]() { 670 get iterator() {
645 return new (TakeIterator$(E))(this[_iterable][core.$iterator], this[_tak eCount]); 671 return new (TakeIterator$(E))(this[_iterable][dartx.iterator], this[_tak eCount]);
646 } 672 }
647 } 673 }
648 dart.defineNamedConstructor(TakeIterable, '_'); 674 dart.defineNamedConstructor(TakeIterable, '_');
649 dart.setSignature(TakeIterable, { 675 dart.setSignature(TakeIterable, {
650 constructors: () => ({ 676 constructors: () => ({
651 new: [TakeIterable$(E), [core.Iterable$(E), core.int]], 677 new: [TakeIterable$(E), [core.Iterable$(E), core.int]],
652 _: [TakeIterable$(E), [core.Iterable$(E), core.int]] 678 _: [TakeIterable$(E), [core.Iterable$(E), core.int]]
653 }) 679 })
654 }); 680 });
655 return TakeIterable; 681 return TakeIterable;
656 }); 682 });
657 let TakeIterable = TakeIterable$(); 683 let TakeIterable = TakeIterable$();
658 let EfficientLengthTakeIterable$ = dart.generic(function(E) { 684 let EfficientLengthTakeIterable$ = dart.generic(function(E) {
659 class EfficientLengthTakeIterable extends TakeIterable$(E) { 685 class EfficientLengthTakeIterable extends TakeIterable$(E) {
660 EfficientLengthTakeIterable(iterable, takeCount) { 686 EfficientLengthTakeIterable(iterable, takeCount) {
661 super._(iterable, takeCount); 687 super._(iterable, takeCount);
662 } 688 }
663 get [core.$length]() { 689 get length() {
664 let iterableLength = this[_iterable][core.$length]; 690 let iterableLength = this[_iterable].length;
665 if (dart.notNull(iterableLength) > dart.notNull(this[_takeCount])) 691 if (dart.notNull(iterableLength) > dart.notNull(this[_takeCount]))
666 return this[_takeCount]; 692 return this[_takeCount];
667 return iterableLength; 693 return iterableLength;
668 } 694 }
669 } 695 }
670 EfficientLengthTakeIterable[dart.implements] = () => [EfficientLength]; 696 EfficientLengthTakeIterable[dart.implements] = () => [EfficientLength];
697 dart.defineExtensionMembers(EfficientLengthTakeIterable, ['length']);
671 dart.setSignature(EfficientLengthTakeIterable, { 698 dart.setSignature(EfficientLengthTakeIterable, {
672 constructors: () => ({EfficientLengthTakeIterable: [EfficientLengthTakeIte rable$(E), [core.Iterable$(E), core.int]]}) 699 constructors: () => ({EfficientLengthTakeIterable: [EfficientLengthTakeIte rable$(E), [core.Iterable$(E), core.int]]})
673 }); 700 });
674 return EfficientLengthTakeIterable; 701 return EfficientLengthTakeIterable;
675 }); 702 });
676 let EfficientLengthTakeIterable = EfficientLengthTakeIterable$(); 703 let EfficientLengthTakeIterable = EfficientLengthTakeIterable$();
677 let _remaining = dart.JsSymbol('_remaining'); 704 let _remaining = dart.JsSymbol('_remaining');
678 let TakeIterator$ = dart.generic(function(E) { 705 let TakeIterator$ = dart.generic(function(E) {
679 class TakeIterator extends core.Iterator$(E) { 706 class TakeIterator extends core.Iterator$(E) {
680 TakeIterator(iterator, remaining) { 707 TakeIterator(iterator, remaining) {
(...skipping 22 matching lines...) Expand all
703 return TakeIterator; 730 return TakeIterator;
704 }); 731 });
705 let TakeIterator = TakeIterator$(); 732 let TakeIterator = TakeIterator$();
706 let TakeWhileIterable$ = dart.generic(function(E) { 733 let TakeWhileIterable$ = dart.generic(function(E) {
707 class TakeWhileIterable extends collection.IterableBase$(E) { 734 class TakeWhileIterable extends collection.IterableBase$(E) {
708 TakeWhileIterable(iterable, f) { 735 TakeWhileIterable(iterable, f) {
709 this[_iterable] = iterable; 736 this[_iterable] = iterable;
710 this[_f] = f; 737 this[_f] = f;
711 super.IterableBase(); 738 super.IterableBase();
712 } 739 }
713 get [core.$iterator]() { 740 get iterator() {
714 return new (TakeWhileIterator$(E))(this[_iterable][core.$iterator], dart .as(this[_f], __CastType2)); 741 return new (TakeWhileIterator$(E))(this[_iterable][dartx.iterator], dart .as(this[_f], __CastType2));
715 } 742 }
716 } 743 }
717 dart.setSignature(TakeWhileIterable, { 744 dart.setSignature(TakeWhileIterable, {
718 constructors: () => ({TakeWhileIterable: [TakeWhileIterable$(E), [core.Ite rable$(E), dart.functionType(core.bool, [E])]]}) 745 constructors: () => ({TakeWhileIterable: [TakeWhileIterable$(E), [core.Ite rable$(E), dart.functionType(core.bool, [E])]]})
719 }); 746 });
720 return TakeWhileIterable; 747 return TakeWhileIterable;
721 }); 748 });
722 let TakeWhileIterable = TakeWhileIterable$(); 749 let TakeWhileIterable = TakeWhileIterable$();
723 let _isFinished = dart.JsSymbol('_isFinished'); 750 let _isFinished = dart.JsSymbol('_isFinished');
724 let TakeWhileIterator$ = dart.generic(function(E) { 751 let TakeWhileIterator$ = dart.generic(function(E) {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
761 } 788 }
762 _(iterable, skipCount) { 789 _(iterable, skipCount) {
763 this[_iterable] = iterable; 790 this[_iterable] = iterable;
764 this[_skipCount] = skipCount; 791 this[_skipCount] = skipCount;
765 super.IterableBase(); 792 super.IterableBase();
766 if (!(typeof this[_skipCount] == 'number')) { 793 if (!(typeof this[_skipCount] == 'number')) {
767 throw new core.ArgumentError.value(this[_skipCount], "count is not an integer"); 794 throw new core.ArgumentError.value(this[_skipCount], "count is not an integer");
768 } 795 }
769 core.RangeError.checkNotNegative(this[_skipCount], "count"); 796 core.RangeError.checkNotNegative(this[_skipCount], "count");
770 } 797 }
771 [core.$skip](count) { 798 skip(count) {
772 if (!(typeof this[_skipCount] == 'number')) { 799 if (!(typeof this[_skipCount] == 'number')) {
773 throw new core.ArgumentError.value(this[_skipCount], "count is not an integer"); 800 throw new core.ArgumentError.value(this[_skipCount], "count is not an integer");
774 } 801 }
775 core.RangeError.checkNotNegative(this[_skipCount], "count"); 802 core.RangeError.checkNotNegative(this[_skipCount], "count");
776 return new (SkipIterable$(E))._(this[_iterable], dart.notNull(this[_skip Count]) + dart.notNull(count)); 803 return new (SkipIterable$(E))._(this[_iterable], dart.notNull(this[_skip Count]) + dart.notNull(count));
777 } 804 }
778 get [core.$iterator]() { 805 get iterator() {
779 return new (SkipIterator$(E))(this[_iterable][core.$iterator], this[_ski pCount]); 806 return new (SkipIterator$(E))(this[_iterable][dartx.iterator], this[_ski pCount]);
780 } 807 }
781 } 808 }
782 dart.defineNamedConstructor(SkipIterable, '_'); 809 dart.defineNamedConstructor(SkipIterable, '_');
783 dart.setSignature(SkipIterable, { 810 dart.setSignature(SkipIterable, {
784 constructors: () => ({ 811 constructors: () => ({
785 new: [SkipIterable$(E), [core.Iterable$(E), core.int]], 812 new: [SkipIterable$(E), [core.Iterable$(E), core.int]],
786 _: [SkipIterable$(E), [core.Iterable$(E), core.int]] 813 _: [SkipIterable$(E), [core.Iterable$(E), core.int]]
787 }), 814 }),
788 methods: () => ({[core.$skip]: [core.Iterable$(E), [core.int]]}) 815 methods: () => ({skip: [core.Iterable$(E), [core.int]]})
789 }); 816 });
790 return SkipIterable; 817 return SkipIterable;
791 }); 818 });
792 let SkipIterable = SkipIterable$(); 819 let SkipIterable = SkipIterable$();
793 let EfficientLengthSkipIterable$ = dart.generic(function(E) { 820 let EfficientLengthSkipIterable$ = dart.generic(function(E) {
794 class EfficientLengthSkipIterable extends SkipIterable$(E) { 821 class EfficientLengthSkipIterable extends SkipIterable$(E) {
795 EfficientLengthSkipIterable(iterable, skipCount) { 822 EfficientLengthSkipIterable(iterable, skipCount) {
796 super._(iterable, skipCount); 823 super._(iterable, skipCount);
797 } 824 }
798 get [core.$length]() { 825 get length() {
799 let length = dart.notNull(this[_iterable][core.$length]) - dart.notNull( this[_skipCount]); 826 let length = dart.notNull(this[_iterable].length) - dart.notNull(this[_s kipCount]);
800 if (dart.notNull(length) >= 0) 827 if (dart.notNull(length) >= 0)
801 return length; 828 return length;
802 return 0; 829 return 0;
803 } 830 }
804 } 831 }
805 EfficientLengthSkipIterable[dart.implements] = () => [EfficientLength]; 832 EfficientLengthSkipIterable[dart.implements] = () => [EfficientLength];
833 dart.defineExtensionMembers(EfficientLengthSkipIterable, ['length']);
806 dart.setSignature(EfficientLengthSkipIterable, { 834 dart.setSignature(EfficientLengthSkipIterable, {
807 constructors: () => ({EfficientLengthSkipIterable: [EfficientLengthSkipIte rable$(E), [core.Iterable$(E), core.int]]}) 835 constructors: () => ({EfficientLengthSkipIterable: [EfficientLengthSkipIte rable$(E), [core.Iterable$(E), core.int]]})
808 }); 836 });
809 return EfficientLengthSkipIterable; 837 return EfficientLengthSkipIterable;
810 }); 838 });
811 let EfficientLengthSkipIterable = EfficientLengthSkipIterable$(); 839 let EfficientLengthSkipIterable = EfficientLengthSkipIterable$();
812 let SkipIterator$ = dart.generic(function(E) { 840 let SkipIterator$ = dart.generic(function(E) {
813 class SkipIterator extends core.Iterator$(E) { 841 class SkipIterator extends core.Iterator$(E) {
814 SkipIterator(iterator, skipCount) { 842 SkipIterator(iterator, skipCount) {
815 this[_iterator] = iterator; 843 this[_iterator] = iterator;
(...skipping 17 matching lines...) Expand all
833 return SkipIterator; 861 return SkipIterator;
834 }); 862 });
835 let SkipIterator = SkipIterator$(); 863 let SkipIterator = SkipIterator$();
836 let SkipWhileIterable$ = dart.generic(function(E) { 864 let SkipWhileIterable$ = dart.generic(function(E) {
837 class SkipWhileIterable extends collection.IterableBase$(E) { 865 class SkipWhileIterable extends collection.IterableBase$(E) {
838 SkipWhileIterable(iterable, f) { 866 SkipWhileIterable(iterable, f) {
839 this[_iterable] = iterable; 867 this[_iterable] = iterable;
840 this[_f] = f; 868 this[_f] = f;
841 super.IterableBase(); 869 super.IterableBase();
842 } 870 }
843 get [core.$iterator]() { 871 get iterator() {
844 return new (SkipWhileIterator$(E))(this[_iterable][core.$iterator], dart .as(this[_f], __CastType4)); 872 return new (SkipWhileIterator$(E))(this[_iterable][dartx.iterator], dart .as(this[_f], __CastType4));
845 } 873 }
846 } 874 }
847 dart.setSignature(SkipWhileIterable, { 875 dart.setSignature(SkipWhileIterable, {
848 constructors: () => ({SkipWhileIterable: [SkipWhileIterable$(E), [core.Ite rable$(E), dart.functionType(core.bool, [E])]]}) 876 constructors: () => ({SkipWhileIterable: [SkipWhileIterable$(E), [core.Ite rable$(E), dart.functionType(core.bool, [E])]]})
849 }); 877 });
850 return SkipWhileIterable; 878 return SkipWhileIterable;
851 }); 879 });
852 let SkipWhileIterable = SkipWhileIterable$(); 880 let SkipWhileIterable = SkipWhileIterable$();
853 let _hasSkipped = dart.JsSymbol('_hasSkipped'); 881 let _hasSkipped = dart.JsSymbol('_hasSkipped');
854 let SkipWhileIterator$ = dart.generic(function(E) { 882 let SkipWhileIterator$ = dart.generic(function(E) {
(...skipping 22 matching lines...) Expand all
877 methods: () => ({moveNext: [core.bool, []]}) 905 methods: () => ({moveNext: [core.bool, []]})
878 }); 906 });
879 return SkipWhileIterator; 907 return SkipWhileIterator;
880 }); 908 });
881 let SkipWhileIterator = SkipWhileIterator$(); 909 let SkipWhileIterator = SkipWhileIterator$();
882 let EmptyIterable$ = dart.generic(function(E) { 910 let EmptyIterable$ = dart.generic(function(E) {
883 class EmptyIterable extends collection.IterableBase$(E) { 911 class EmptyIterable extends collection.IterableBase$(E) {
884 EmptyIterable() { 912 EmptyIterable() {
885 super.IterableBase(); 913 super.IterableBase();
886 } 914 }
887 get [core.$iterator]() { 915 get iterator() {
888 return dart.const(new (EmptyIterator$(E))()); 916 return dart.const(new (EmptyIterator$(E))());
889 } 917 }
890 [core.$forEach](action) { 918 forEach(action) {
891 dart.as(action, dart.functionType(dart.void, [E])); 919 dart.as(action, dart.functionType(dart.void, [E]));
892 } 920 }
893 get [core.$isEmpty]() { 921 get isEmpty() {
894 return true; 922 return true;
895 } 923 }
896 get [core.$length]() { 924 get length() {
897 return 0; 925 return 0;
898 } 926 }
899 get [core.$first]() { 927 get first() {
900 throw IterableElementError.noElement(); 928 throw IterableElementError.noElement();
901 } 929 }
902 get [core.$last]() { 930 get last() {
903 throw IterableElementError.noElement(); 931 throw IterableElementError.noElement();
904 } 932 }
905 get [core.$single]() { 933 get single() {
906 throw IterableElementError.noElement(); 934 throw IterableElementError.noElement();
907 } 935 }
908 [core.$elementAt](index) { 936 elementAt(index) {
909 throw new core.RangeError.range(index, 0, 0, "index"); 937 throw new core.RangeError.range(index, 0, 0, "index");
910 } 938 }
911 [core.$contains](element) { 939 contains(element) {
912 return false; 940 return false;
913 } 941 }
914 [core.$every](test) { 942 every(test) {
915 dart.as(test, dart.functionType(core.bool, [E])); 943 dart.as(test, dart.functionType(core.bool, [E]));
916 return true; 944 return true;
917 } 945 }
918 [core.$any](test) { 946 any(test) {
919 dart.as(test, dart.functionType(core.bool, [E])); 947 dart.as(test, dart.functionType(core.bool, [E]));
920 return false; 948 return false;
921 } 949 }
922 [core.$firstWhere](test, opts) { 950 firstWhere(test, opts) {
923 dart.as(test, dart.functionType(core.bool, [E])); 951 dart.as(test, dart.functionType(core.bool, [E]));
924 let orElse = opts && 'orElse' in opts ? opts.orElse : null; 952 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
925 dart.as(orElse, dart.functionType(E, [])); 953 dart.as(orElse, dart.functionType(E, []));
926 if (orElse != null) 954 if (orElse != null)
927 return orElse(); 955 return orElse();
928 throw IterableElementError.noElement(); 956 throw IterableElementError.noElement();
929 } 957 }
930 [core.$lastWhere](test, opts) { 958 lastWhere(test, opts) {
931 dart.as(test, dart.functionType(core.bool, [E])); 959 dart.as(test, dart.functionType(core.bool, [E]));
932 let orElse = opts && 'orElse' in opts ? opts.orElse : null; 960 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
933 dart.as(orElse, dart.functionType(E, [])); 961 dart.as(orElse, dart.functionType(E, []));
934 if (orElse != null) 962 if (orElse != null)
935 return orElse(); 963 return orElse();
936 throw IterableElementError.noElement(); 964 throw IterableElementError.noElement();
937 } 965 }
938 [core.$singleWhere](test, opts) { 966 singleWhere(test, opts) {
939 dart.as(test, dart.functionType(core.bool, [E])); 967 dart.as(test, dart.functionType(core.bool, [E]));
940 let orElse = opts && 'orElse' in opts ? opts.orElse : null; 968 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
941 dart.as(orElse, dart.functionType(E, [])); 969 dart.as(orElse, dart.functionType(E, []));
942 if (orElse != null) 970 if (orElse != null)
943 return orElse(); 971 return orElse();
944 throw IterableElementError.noElement(); 972 throw IterableElementError.noElement();
945 } 973 }
946 [core.$join](separator) { 974 join(separator) {
947 if (separator === void 0) 975 if (separator === void 0)
948 separator = ""; 976 separator = "";
949 return ""; 977 return "";
950 } 978 }
951 [core.$where](test) { 979 where(test) {
952 dart.as(test, dart.functionType(core.bool, [E])); 980 dart.as(test, dart.functionType(core.bool, [E]));
953 return this; 981 return this;
954 } 982 }
955 [core.$map](f) { 983 map(f) {
956 dart.as(f, dart.functionType(core.Object, [E])); 984 dart.as(f, dart.functionType(core.Object, [E]));
957 return dart.const(new (EmptyIterable$())()); 985 return dart.const(new (EmptyIterable$())());
958 } 986 }
959 [core.$reduce](combine) { 987 reduce(combine) {
960 dart.as(combine, dart.functionType(E, [E, E])); 988 dart.as(combine, dart.functionType(E, [E, E]));
961 throw IterableElementError.noElement(); 989 throw IterableElementError.noElement();
962 } 990 }
963 [core.$fold](initialValue, combine) { 991 fold(initialValue, combine) {
964 dart.as(combine, dart.functionType(core.Object, [dart.bottom, E])); 992 dart.as(combine, dart.functionType(core.Object, [dart.bottom, E]));
965 return initialValue; 993 return initialValue;
966 } 994 }
967 [core.$skip](count) { 995 skip(count) {
968 core.RangeError.checkNotNegative(count, "count"); 996 core.RangeError.checkNotNegative(count, "count");
969 return this; 997 return this;
970 } 998 }
971 [core.$skipWhile](test) { 999 skipWhile(test) {
972 dart.as(test, dart.functionType(core.bool, [E])); 1000 dart.as(test, dart.functionType(core.bool, [E]));
973 return this; 1001 return this;
974 } 1002 }
975 [core.$take](count) { 1003 take(count) {
976 core.RangeError.checkNotNegative(count, "count"); 1004 core.RangeError.checkNotNegative(count, "count");
977 return this; 1005 return this;
978 } 1006 }
979 [core.$takeWhile](test) { 1007 takeWhile(test) {
980 dart.as(test, dart.functionType(core.bool, [E])); 1008 dart.as(test, dart.functionType(core.bool, [E]));
981 return this; 1009 return this;
982 } 1010 }
983 [core.$toList](opts) { 1011 toList(opts) {
984 let growable = opts && 'growable' in opts ? opts.growable : true; 1012 let growable = opts && 'growable' in opts ? opts.growable : true;
985 return growable ? dart.setType([], core.List$(E)) : core.List$(E).new(0) ; 1013 return growable ? dart.list([], E) : core.List$(E).new(0);
986 } 1014 }
987 [core.$toSet]() { 1015 toSet() {
988 return core.Set$(E).new(); 1016 return core.Set$(E).new();
989 } 1017 }
990 } 1018 }
991 EmptyIterable[dart.implements] = () => [EfficientLength]; 1019 EmptyIterable[dart.implements] = () => [EfficientLength];
1020 dart.defineExtensionMembers(EmptyIterable, [
1021 'forEach',
1022 'elementAt',
1023 'contains',
1024 'every',
1025 'any',
1026 'firstWhere',
1027 'lastWhere',
1028 'singleWhere',
1029 'join',
1030 'where',
1031 'map',
1032 'reduce',
1033 'fold',
1034 'skip',
1035 'skipWhile',
1036 'take',
1037 'takeWhile',
1038 'toList',
1039 'toSet',
1040 'iterator',
1041 'isEmpty',
1042 'length',
1043 'first',
1044 'last',
1045 'single'
1046 ]);
992 dart.setSignature(EmptyIterable, { 1047 dart.setSignature(EmptyIterable, {
993 constructors: () => ({EmptyIterable: [EmptyIterable$(E), []]}), 1048 constructors: () => ({EmptyIterable: [EmptyIterable$(E), []]}),
994 methods: () => ({ 1049 methods: () => ({
995 [core.$forEach]: [dart.void, [dart.functionType(dart.void, [E])]], 1050 forEach: [dart.void, [dart.functionType(dart.void, [E])]],
996 [core.$elementAt]: [E, [core.int]], 1051 elementAt: [E, [core.int]],
997 [core.$every]: [core.bool, [dart.functionType(core.bool, [E])]], 1052 every: [core.bool, [dart.functionType(core.bool, [E])]],
998 [core.$any]: [core.bool, [dart.functionType(core.bool, [E])]], 1053 any: [core.bool, [dart.functionType(core.bool, [E])]],
999 [core.$firstWhere]: [E, [dart.functionType(core.bool, [E])], {orElse: da rt.functionType(E, [])}], 1054 firstWhere: [E, [dart.functionType(core.bool, [E])], {orElse: dart.funct ionType(E, [])}],
1000 [core.$lastWhere]: [E, [dart.functionType(core.bool, [E])], {orElse: dar t.functionType(E, [])}], 1055 lastWhere: [E, [dart.functionType(core.bool, [E])], {orElse: dart.functi onType(E, [])}],
1001 [core.$singleWhere]: [E, [dart.functionType(core.bool, [E])], {orElse: d art.functionType(E, [])}], 1056 singleWhere: [E, [dart.functionType(core.bool, [E])], {orElse: dart.func tionType(E, [])}],
1002 [core.$where]: [core.Iterable$(E), [dart.functionType(core.bool, [E])]], 1057 where: [core.Iterable$(E), [dart.functionType(core.bool, [E])]],
1003 [core.$map]: [core.Iterable, [dart.functionType(core.Object, [E])]], 1058 map: [core.Iterable, [dart.functionType(core.Object, [E])]],
1004 [core.$reduce]: [E, [dart.functionType(E, [E, E])]], 1059 reduce: [E, [dart.functionType(E, [E, E])]],
1005 [core.$fold]: [core.Object, [core.Object, dart.functionType(core.Object, [dart.bottom, E])]], 1060 fold: [core.Object, [core.Object, dart.functionType(core.Object, [dart.b ottom, E])]],
1006 [core.$skip]: [core.Iterable$(E), [core.int]], 1061 skip: [core.Iterable$(E), [core.int]],
1007 [core.$skipWhile]: [core.Iterable$(E), [dart.functionType(core.bool, [E] )]], 1062 skipWhile: [core.Iterable$(E), [dart.functionType(core.bool, [E])]],
1008 [core.$take]: [core.Iterable$(E), [core.int]], 1063 take: [core.Iterable$(E), [core.int]],
1009 [core.$takeWhile]: [core.Iterable$(E), [dart.functionType(core.bool, [E] )]], 1064 takeWhile: [core.Iterable$(E), [dart.functionType(core.bool, [E])]],
1010 [core.$toList]: [core.List$(E), [], {growable: core.bool}], 1065 toList: [core.List$(E), [], {growable: core.bool}],
1011 [core.$toSet]: [core.Set$(E), []] 1066 toSet: [core.Set$(E), []]
1012 }) 1067 })
1013 }); 1068 });
1014 return EmptyIterable; 1069 return EmptyIterable;
1015 }); 1070 });
1016 let EmptyIterable = EmptyIterable$(); 1071 let EmptyIterable = EmptyIterable$();
1017 let EmptyIterator$ = dart.generic(function(E) { 1072 let EmptyIterator$ = dart.generic(function(E) {
1018 class EmptyIterator extends core.Object { 1073 class EmptyIterator extends core.Object {
1019 EmptyIterator() { 1074 EmptyIterator() {
1020 } 1075 }
1021 moveNext() { 1076 moveNext() {
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
1065 static every(iterable, f) { 1120 static every(iterable, f) {
1066 dart.as(f, dart.functionType(core.bool, [dart.bottom])); 1121 dart.as(f, dart.functionType(core.bool, [dart.bottom]));
1067 for (let e of iterable) { 1122 for (let e of iterable) {
1068 if (!dart.notNull(dart.dcall(f, e))) 1123 if (!dart.notNull(dart.dcall(f, e)))
1069 return false; 1124 return false;
1070 } 1125 }
1071 return true; 1126 return true;
1072 } 1127 }
1073 static reduce(iterable, combine) { 1128 static reduce(iterable, combine) {
1074 dart.as(combine, dart.functionType(core.Object, [dart.bottom, dart.botto m])); 1129 dart.as(combine, dart.functionType(core.Object, [dart.bottom, dart.botto m]));
1075 let iterator = iterable[core.$iterator]; 1130 let iterator = iterable[dartx.iterator];
1076 if (!dart.notNull(iterator.moveNext())) 1131 if (!dart.notNull(iterator.moveNext()))
1077 throw IterableElementError.noElement(); 1132 throw IterableElementError.noElement();
1078 let value = iterator.current; 1133 let value = iterator.current;
1079 while (iterator.moveNext()) { 1134 while (iterator.moveNext()) {
1080 value = dart.dcall(combine, value, iterator.current); 1135 value = dart.dcall(combine, value, iterator.current);
1081 } 1136 }
1082 return value; 1137 return value;
1083 } 1138 }
1084 static fold(iterable, initialValue, combine) { 1139 static fold(iterable, initialValue, combine) {
1085 dart.as(combine, dart.functionType(core.Object, [dart.bottom, dart.botto m])); 1140 dart.as(combine, dart.functionType(core.Object, [dart.bottom, dart.botto m]));
1086 for (let element of iterable) { 1141 for (let element of iterable) {
1087 initialValue = dart.dcall(combine, initialValue, element); 1142 initialValue = dart.dcall(combine, initialValue, element);
1088 } 1143 }
1089 return initialValue; 1144 return initialValue;
1090 } 1145 }
1091 static removeWhereList(list, test) { 1146 static removeWhereList(list, test) {
1092 dart.as(test, dart.functionType(core.bool, [dart.bottom])); 1147 dart.as(test, dart.functionType(core.bool, [dart.bottom]));
1093 let retained = []; 1148 let retained = [];
1094 let length = list[core.$length]; 1149 let length = list.length;
1095 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 1150 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
1096 let element = list[core.$get](i); 1151 let element = list[dartx.get](i);
1097 if (!dart.notNull(dart.dcall(test, element))) { 1152 if (!dart.notNull(dart.dcall(test, element))) {
1098 retained[core.$add](element); 1153 retained[dartx.add](element);
1099 } 1154 }
1100 if (length != list[core.$length]) { 1155 if (length != list.length) {
1101 throw new core.ConcurrentModificationError(list); 1156 throw new core.ConcurrentModificationError(list);
1102 } 1157 }
1103 } 1158 }
1104 if (retained[core.$length] == length) 1159 if (retained.length == length)
1105 return; 1160 return;
1106 list[core.$length] = retained[core.$length]; 1161 list.length = retained.length;
1107 for (let i = 0; dart.notNull(i) < dart.notNull(retained[core.$length]); i = dart.notNull(i) + 1) { 1162 for (let i = 0; dart.notNull(i) < dart.notNull(retained.length); i = dar t.notNull(i) + 1) {
1108 list[core.$set](i, retained[core.$get](i)); 1163 list[dartx.set](i, retained[dartx.get](i));
1109 } 1164 }
1110 } 1165 }
1111 static isEmpty(iterable) { 1166 static isEmpty(iterable) {
1112 return !dart.notNull(iterable[core.$iterator].moveNext()); 1167 return !dart.notNull(iterable[dartx.iterator].moveNext());
1113 } 1168 }
1114 static first(iterable) { 1169 static first(iterable) {
1115 let it = iterable[core.$iterator]; 1170 let it = iterable[dartx.iterator];
1116 if (!dart.notNull(it.moveNext())) { 1171 if (!dart.notNull(it.moveNext())) {
1117 throw IterableElementError.noElement(); 1172 throw IterableElementError.noElement();
1118 } 1173 }
1119 return it.current; 1174 return it.current;
1120 } 1175 }
1121 static last(iterable) { 1176 static last(iterable) {
1122 let it = iterable[core.$iterator]; 1177 let it = iterable[dartx.iterator];
1123 if (!dart.notNull(it.moveNext())) { 1178 if (!dart.notNull(it.moveNext())) {
1124 throw IterableElementError.noElement(); 1179 throw IterableElementError.noElement();
1125 } 1180 }
1126 let result = null; 1181 let result = null;
1127 do { 1182 do {
1128 result = it.current; 1183 result = it.current;
1129 } while (it.moveNext()); 1184 } while (it.moveNext());
1130 return result; 1185 return result;
1131 } 1186 }
1132 static single(iterable) { 1187 static single(iterable) {
1133 let it = iterable[core.$iterator]; 1188 let it = iterable[dartx.iterator];
1134 if (!dart.notNull(it.moveNext())) 1189 if (!dart.notNull(it.moveNext()))
1135 throw IterableElementError.noElement(); 1190 throw IterableElementError.noElement();
1136 let result = it.current; 1191 let result = it.current;
1137 if (it.moveNext()) 1192 if (it.moveNext())
1138 throw IterableElementError.tooMany(); 1193 throw IterableElementError.tooMany();
1139 return result; 1194 return result;
1140 } 1195 }
1141 static firstWhere(iterable, test, orElse) { 1196 static firstWhere(iterable, test, orElse) {
1142 dart.as(test, dart.functionType(core.bool, [dart.bottom])); 1197 dart.as(test, dart.functionType(core.bool, [dart.bottom]));
1143 dart.as(orElse, dart.functionType(core.Object, [])); 1198 dart.as(orElse, dart.functionType(core.Object, []));
(...skipping 18 matching lines...) Expand all
1162 } 1217 }
1163 if (foundMatching) 1218 if (foundMatching)
1164 return result; 1219 return result;
1165 if (orElse != null) 1220 if (orElse != null)
1166 return orElse(); 1221 return orElse();
1167 throw IterableElementError.noElement(); 1222 throw IterableElementError.noElement();
1168 } 1223 }
1169 static lastWhereList(list, test, orElse) { 1224 static lastWhereList(list, test, orElse) {
1170 dart.as(test, dart.functionType(core.bool, [dart.bottom])); 1225 dart.as(test, dart.functionType(core.bool, [dart.bottom]));
1171 dart.as(orElse, dart.functionType(core.Object, [])); 1226 dart.as(orElse, dart.functionType(core.Object, []));
1172 for (let i = dart.notNull(list[core.$length]) - 1; dart.notNull(i) >= 0; i = dart.notNull(i) - 1) { 1227 for (let i = dart.notNull(list.length) - 1; dart.notNull(i) >= 0; i = da rt.notNull(i) - 1) {
1173 let element = list[core.$get](i); 1228 let element = list[dartx.get](i);
1174 if (dart.dcall(test, element)) 1229 if (dart.dcall(test, element))
1175 return element; 1230 return element;
1176 } 1231 }
1177 if (orElse != null) 1232 if (orElse != null)
1178 return orElse(); 1233 return orElse();
1179 throw IterableElementError.noElement(); 1234 throw IterableElementError.noElement();
1180 } 1235 }
1181 static singleWhere(iterable, test) { 1236 static singleWhere(iterable, test) {
1182 dart.as(test, dart.functionType(core.bool, [dart.bottom])); 1237 dart.as(test, dart.functionType(core.bool, [dart.bottom]));
1183 let result = null; 1238 let result = null;
(...skipping 26 matching lines...) Expand all
1210 static join(iterable, separator) { 1265 static join(iterable, separator) {
1211 if (separator === void 0) 1266 if (separator === void 0)
1212 separator = null; 1267 separator = null;
1213 let buffer = new core.StringBuffer(); 1268 let buffer = new core.StringBuffer();
1214 buffer.writeAll(iterable, separator); 1269 buffer.writeAll(iterable, separator);
1215 return dart.toString(buffer); 1270 return dart.toString(buffer);
1216 } 1271 }
1217 static joinList(list, separator) { 1272 static joinList(list, separator) {
1218 if (separator === void 0) 1273 if (separator === void 0)
1219 separator = null; 1274 separator = null;
1220 if (list[core.$isEmpty]) 1275 if (list[dartx.isEmpty])
1221 return ""; 1276 return "";
1222 if (list[core.$length] == 1) 1277 if (list.length == 1)
1223 return `${list[core.$get](0)}`; 1278 return `${list[dartx.get](0)}`;
1224 let buffer = new core.StringBuffer(); 1279 let buffer = new core.StringBuffer();
1225 if (separator.isEmpty) { 1280 if (separator[dartx.isEmpty]) {
1226 for (let i = 0; dart.notNull(i) < dart.notNull(list[core.$length]); i = dart.notNull(i) + 1) { 1281 for (let i = 0; dart.notNull(i) < dart.notNull(list.length); i = dart. notNull(i) + 1) {
1227 buffer.write(list[core.$get](i)); 1282 buffer.write(list[dartx.get](i));
1228 } 1283 }
1229 } else { 1284 } else {
1230 buffer.write(list[core.$get](0)); 1285 buffer.write(list[dartx.get](0));
1231 for (let i = 1; dart.notNull(i) < dart.notNull(list[core.$length]); i = dart.notNull(i) + 1) { 1286 for (let i = 1; dart.notNull(i) < dart.notNull(list.length); i = dart. notNull(i) + 1) {
1232 buffer.write(separator); 1287 buffer.write(separator);
1233 buffer.write(list[core.$get](i)); 1288 buffer.write(list[dartx.get](i));
1234 } 1289 }
1235 } 1290 }
1236 return dart.toString(buffer); 1291 return dart.toString(buffer);
1237 } 1292 }
1238 where(iterable, f) { 1293 where(iterable, f) {
1239 dart.as(f, dart.functionType(core.bool, [dart.bottom])); 1294 dart.as(f, dart.functionType(core.bool, [dart.bottom]));
1240 return new (WhereIterable$(T))(dart.as(iterable, core.Iterable$(T)), dar t.as(f, __CastType6)); 1295 return new (WhereIterable$(T))(dart.as(iterable, core.Iterable$(T)), dar t.as(f, __CastType6));
1241 } 1296 }
1242 static map(iterable, f) { 1297 static map(iterable, f) {
1243 dart.as(f, dart.functionType(core.Object, [dart.bottom])); 1298 dart.as(f, dart.functionType(core.Object, [dart.bottom]));
(...skipping 26 matching lines...) Expand all
1270 } 1325 }
1271 static sortList(list, compare) { 1326 static sortList(list, compare) {
1272 dart.as(compare, dart.functionType(core.int, [dart.bottom, dart.bottom]) ); 1327 dart.as(compare, dart.functionType(core.int, [dart.bottom, dart.bottom]) );
1273 if (compare == null) 1328 if (compare == null)
1274 compare = core.Comparable.compare; 1329 compare = core.Comparable.compare;
1275 Sort.sort(list, compare); 1330 Sort.sort(list, compare);
1276 } 1331 }
1277 static shuffleList(list, random) { 1332 static shuffleList(list, random) {
1278 if (random == null) 1333 if (random == null)
1279 random = math.Random.new(); 1334 random = math.Random.new();
1280 let length = list[core.$length]; 1335 let length = list.length;
1281 while (dart.notNull(length) > 1) { 1336 while (dart.notNull(length) > 1) {
1282 let pos = random.nextInt(length); 1337 let pos = random.nextInt(length);
1283 length = dart.notNull(length) - 1; 1338 length = dart.notNull(length) - 1;
1284 let tmp = list[core.$get](length); 1339 let tmp = list[dartx.get](length);
1285 list[core.$set](length, list[core.$get](pos)); 1340 list[dartx.set](length, list[dartx.get](pos));
1286 list[core.$set](pos, tmp); 1341 list[dartx.set](pos, tmp);
1287 } 1342 }
1288 } 1343 }
1289 static indexOfList(list, element, start) { 1344 static indexOfList(list, element, start) {
1290 return Lists.indexOf(list, element, start, list[core.$length]); 1345 return Lists.indexOf(list, element, start, list.length);
1291 } 1346 }
1292 static lastIndexOfList(list, element, start) { 1347 static lastIndexOfList(list, element, start) {
1293 if (start == null) 1348 if (start == null)
1294 start = dart.notNull(list[core.$length]) - 1; 1349 start = dart.notNull(list.length) - 1;
1295 return Lists.lastIndexOf(list, element, start); 1350 return Lists.lastIndexOf(list, element, start);
1296 } 1351 }
1297 static _rangeCheck(list, start, end) { 1352 static _rangeCheck(list, start, end) {
1298 core.RangeError.checkValidRange(start, end, list[core.$length]); 1353 core.RangeError.checkValidRange(start, end, list.length);
1299 } 1354 }
1300 getRangeList(list, start, end) { 1355 getRangeList(list, start, end) {
1301 IterableMixinWorkaround$()._rangeCheck(list, start, end); 1356 IterableMixinWorkaround$()._rangeCheck(list, start, end);
1302 return new (SubListIterable$(T))(dart.as(list, core.Iterable$(T)), start , end); 1357 return new (SubListIterable$(T))(dart.as(list, core.Iterable$(T)), start , end);
1303 } 1358 }
1304 static setRangeList(list, start, end, from, skipCount) { 1359 static setRangeList(list, start, end, from, skipCount) {
1305 IterableMixinWorkaround$()._rangeCheck(list, start, end); 1360 IterableMixinWorkaround$()._rangeCheck(list, start, end);
1306 let length = dart.notNull(end) - dart.notNull(start); 1361 let length = dart.notNull(end) - dart.notNull(start);
1307 if (length == 0) 1362 if (length == 0)
1308 return; 1363 return;
1309 if (dart.notNull(skipCount) < 0) 1364 if (dart.notNull(skipCount) < 0)
1310 throw new core.ArgumentError(skipCount); 1365 throw new core.ArgumentError(skipCount);
1311 let otherList = null; 1366 let otherList = null;
1312 let otherStart = null; 1367 let otherStart = null;
1313 if (dart.is(from, core.List)) { 1368 if (dart.is(from, core.List)) {
1314 otherList = from; 1369 otherList = from;
1315 otherStart = skipCount; 1370 otherStart = skipCount;
1316 } else { 1371 } else {
1317 otherList = from[core.$skip](skipCount)[core.$toList]({growable: false }); 1372 otherList = from[dartx.skip](skipCount)[dartx.toList]({growable: false });
1318 otherStart = 0; 1373 otherStart = 0;
1319 } 1374 }
1320 if (dart.notNull(otherStart) + dart.notNull(length) > dart.notNull(other List[core.$length])) { 1375 if (dart.notNull(otherStart) + dart.notNull(length) > dart.notNull(other List.length)) {
1321 throw IterableElementError.tooFew(); 1376 throw IterableElementError.tooFew();
1322 } 1377 }
1323 Lists.copy(otherList, otherStart, list, start, length); 1378 Lists.copy(otherList, otherStart, list, start, length);
1324 } 1379 }
1325 static replaceRangeList(list, start, end, iterable) { 1380 static replaceRangeList(list, start, end, iterable) {
1326 IterableMixinWorkaround$()._rangeCheck(list, start, end); 1381 IterableMixinWorkaround$()._rangeCheck(list, start, end);
1327 if (!dart.is(iterable, EfficientLength)) { 1382 if (!dart.is(iterable, EfficientLength)) {
1328 iterable = iterable[core.$toList](); 1383 iterable = iterable[dartx.toList]();
1329 } 1384 }
1330 let removeLength = dart.notNull(end) - dart.notNull(start); 1385 let removeLength = dart.notNull(end) - dart.notNull(start);
1331 let insertLength = iterable[core.$length]; 1386 let insertLength = iterable.length;
1332 if (dart.notNull(removeLength) >= dart.notNull(insertLength)) { 1387 if (dart.notNull(removeLength) >= dart.notNull(insertLength)) {
1333 let delta = dart.notNull(removeLength) - dart.notNull(insertLength); 1388 let delta = dart.notNull(removeLength) - dart.notNull(insertLength);
1334 let insertEnd = dart.notNull(start) + dart.notNull(insertLength); 1389 let insertEnd = dart.notNull(start) + dart.notNull(insertLength);
1335 let newEnd = dart.notNull(list[core.$length]) - dart.notNull(delta); 1390 let newEnd = dart.notNull(list.length) - dart.notNull(delta);
1336 list[core.$setRange](start, insertEnd, iterable); 1391 list[dartx.setRange](start, insertEnd, iterable);
1337 if (delta != 0) { 1392 if (delta != 0) {
1338 list[core.$setRange](insertEnd, newEnd, list, end); 1393 list[dartx.setRange](insertEnd, newEnd, list, end);
1339 list[core.$length] = newEnd; 1394 list.length = newEnd;
1340 } 1395 }
1341 } else { 1396 } else {
1342 let delta = dart.notNull(insertLength) - dart.notNull(removeLength); 1397 let delta = dart.notNull(insertLength) - dart.notNull(removeLength);
1343 let newLength = dart.notNull(list[core.$length]) + dart.notNull(delta) ; 1398 let newLength = dart.notNull(list.length) + dart.notNull(delta);
1344 let insertEnd = dart.notNull(start) + dart.notNull(insertLength); 1399 let insertEnd = dart.notNull(start) + dart.notNull(insertLength);
1345 list[core.$length] = newLength; 1400 list.length = newLength;
1346 list[core.$setRange](insertEnd, newLength, list, end); 1401 list[dartx.setRange](insertEnd, newLength, list, end);
1347 list[core.$setRange](start, insertEnd, iterable); 1402 list[dartx.setRange](start, insertEnd, iterable);
1348 } 1403 }
1349 } 1404 }
1350 static fillRangeList(list, start, end, fillValue) { 1405 static fillRangeList(list, start, end, fillValue) {
1351 IterableMixinWorkaround$()._rangeCheck(list, start, end); 1406 IterableMixinWorkaround$()._rangeCheck(list, start, end);
1352 for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNul l(i) + 1) { 1407 for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNul l(i) + 1) {
1353 list[core.$set](i, fillValue); 1408 list[dartx.set](i, fillValue);
1354 } 1409 }
1355 } 1410 }
1356 static insertAllList(list, index, iterable) { 1411 static insertAllList(list, index, iterable) {
1357 core.RangeError.checkValueInInterval(index, 0, list[core.$length], "inde x"); 1412 core.RangeError.checkValueInInterval(index, 0, list.length, "index");
1358 if (!dart.is(iterable, EfficientLength)) { 1413 if (!dart.is(iterable, EfficientLength)) {
1359 iterable = iterable[core.$toList]({growable: false}); 1414 iterable = iterable[dartx.toList]({growable: false});
1360 } 1415 }
1361 let insertionLength = iterable[core.$length]; 1416 let insertionLength = iterable.length;
1362 list[core.$length] = dart.notNull(list[core.$length]) + dart.notNull(ins ertionLength); 1417 list.length = dart.notNull(list.length) + dart.notNull(insertionLength);
1363 list[core.$setRange](dart.notNull(index) + dart.notNull(insertionLength) , list[core.$length], list, index); 1418 list[dartx.setRange](dart.notNull(index) + dart.notNull(insertionLength) , list.length, list, index);
1364 for (let element of iterable) { 1419 for (let element of iterable) {
1365 list[core.$set]((() => { 1420 list[dartx.set]((() => {
1366 let x = index; 1421 let x = index;
1367 index = dart.notNull(x) + 1; 1422 index = dart.notNull(x) + 1;
1368 return x; 1423 return x;
1369 })(), element); 1424 })(), element);
1370 } 1425 }
1371 } 1426 }
1372 static setAllList(list, index, iterable) { 1427 static setAllList(list, index, iterable) {
1373 core.RangeError.checkValueInInterval(index, 0, list[core.$length], "inde x"); 1428 core.RangeError.checkValueInInterval(index, 0, list.length, "index");
1374 for (let element of iterable) { 1429 for (let element of iterable) {
1375 list[core.$set]((() => { 1430 list[dartx.set]((() => {
1376 let x = index; 1431 let x = index;
1377 index = dart.notNull(x) + 1; 1432 index = dart.notNull(x) + 1;
1378 return x; 1433 return x;
1379 })(), element); 1434 })(), element);
1380 } 1435 }
1381 } 1436 }
1382 asMapList(l) { 1437 asMapList(l) {
1383 return new (ListMapView$(T))(dart.as(l, core.List$(T))); 1438 return new (ListMapView$(T))(dart.as(l, core.List$(T)));
1384 } 1439 }
1385 static setContainsAll(set, other) { 1440 static setContainsAll(set, other) {
1386 for (let element of other) { 1441 for (let element of other) {
1387 if (!dart.notNull(set[core.$contains](element))) 1442 if (!dart.notNull(set.contains(element)))
1388 return false; 1443 return false;
1389 } 1444 }
1390 return true; 1445 return true;
1391 } 1446 }
1392 static setIntersection(set, other, result) { 1447 static setIntersection(set, other, result) {
1393 let smaller = null; 1448 let smaller = null;
1394 let larger = null; 1449 let larger = null;
1395 if (dart.notNull(set[core.$length]) < dart.notNull(other[core.$length])) { 1450 if (dart.notNull(set.length) < dart.notNull(other.length)) {
1396 smaller = set; 1451 smaller = set;
1397 larger = other; 1452 larger = other;
1398 } else { 1453 } else {
1399 smaller = other; 1454 smaller = other;
1400 larger = set; 1455 larger = set;
1401 } 1456 }
1402 for (let element of smaller) { 1457 for (let element of smaller) {
1403 if (larger[core.$contains](element)) { 1458 if (larger.contains(element)) {
1404 result.add(element); 1459 result.add(element);
1405 } 1460 }
1406 } 1461 }
1407 return result; 1462 return result;
1408 } 1463 }
1409 static setUnion(set, other, result) { 1464 static setUnion(set, other, result) {
1410 result.addAll(set); 1465 result.addAll(set);
1411 result.addAll(other); 1466 result.addAll(other);
1412 return result; 1467 return result;
1413 } 1468 }
1414 static setDifference(set, other, result) { 1469 static setDifference(set, other, result) {
1415 for (let element of set) { 1470 for (let element of set) {
1416 if (!dart.notNull(other[core.$contains](element))) { 1471 if (!dart.notNull(other.contains(element))) {
1417 result.add(element); 1472 result.add(element);
1418 } 1473 }
1419 } 1474 }
1420 return result; 1475 return result;
1421 } 1476 }
1422 } 1477 }
1423 dart.setSignature(IterableMixinWorkaround, { 1478 dart.setSignature(IterableMixinWorkaround, {
1424 methods: () => ({ 1479 methods: () => ({
1425 where: [core.Iterable$(T), [core.Iterable, dart.functionType(core.bool, [dart.bottom])]], 1480 where: [core.Iterable$(T), [core.Iterable, dart.functionType(core.bool, [dart.bottom])]],
1426 takeList: [core.Iterable$(T), [core.List, core.int]], 1481 takeList: [core.Iterable$(T), [core.List, core.int]],
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
1575 removeLast: [E, []], 1630 removeLast: [E, []],
1576 removeRange: [dart.void, [core.int, core.int]], 1631 removeRange: [dart.void, [core.int, core.int]],
1577 replaceRange: [dart.void, [core.int, core.int, core.Iterable$(E)]] 1632 replaceRange: [dart.void, [core.int, core.int, core.Iterable$(E)]]
1578 }) 1633 })
1579 }); 1634 });
1580 return FixedLengthListMixin; 1635 return FixedLengthListMixin;
1581 }); 1636 });
1582 let FixedLengthListMixin = FixedLengthListMixin$(); 1637 let FixedLengthListMixin = FixedLengthListMixin$();
1583 let UnmodifiableListMixin$ = dart.generic(function(E) { 1638 let UnmodifiableListMixin$ = dart.generic(function(E) {
1584 class UnmodifiableListMixin extends core.Object { 1639 class UnmodifiableListMixin extends core.Object {
1585 [core.$set](index, value) { 1640 set(index, value) {
1586 dart.as(value, E); 1641 dart.as(value, E);
1587 throw new core.UnsupportedError("Cannot modify an unmodifiable list"); 1642 throw new core.UnsupportedError("Cannot modify an unmodifiable list");
1588 } 1643 }
1589 set [core.$length](newLength) { 1644 set length(newLength) {
1590 throw new core.UnsupportedError("Cannot change the length of an unmodifi able list"); 1645 throw new core.UnsupportedError("Cannot change the length of an unmodifi able list");
1591 } 1646 }
1592 [core.$setAll](at, iterable) { 1647 setAll(at, iterable) {
1593 dart.as(iterable, core.Iterable$(E)); 1648 dart.as(iterable, core.Iterable$(E));
1594 throw new core.UnsupportedError("Cannot modify an unmodifiable list"); 1649 throw new core.UnsupportedError("Cannot modify an unmodifiable list");
1595 } 1650 }
1596 [core.$add](value) { 1651 add(value) {
1597 dart.as(value, E); 1652 dart.as(value, E);
1598 throw new core.UnsupportedError("Cannot add to an unmodifiable list"); 1653 throw new core.UnsupportedError("Cannot add to an unmodifiable list");
1599 } 1654 }
1600 [core.$insert](index, value) { 1655 insert(index, value) {
1601 dart.as(value, E); 1656 dart.as(value, E);
1602 throw new core.UnsupportedError("Cannot add to an unmodifiable list"); 1657 throw new core.UnsupportedError("Cannot add to an unmodifiable list");
1603 } 1658 }
1604 [core.$insertAll](at, iterable) { 1659 insertAll(at, iterable) {
1605 dart.as(iterable, core.Iterable$(E)); 1660 dart.as(iterable, core.Iterable$(E));
1606 throw new core.UnsupportedError("Cannot add to an unmodifiable list"); 1661 throw new core.UnsupportedError("Cannot add to an unmodifiable list");
1607 } 1662 }
1608 [core.$addAll](iterable) { 1663 addAll(iterable) {
1609 dart.as(iterable, core.Iterable$(E)); 1664 dart.as(iterable, core.Iterable$(E));
1610 throw new core.UnsupportedError("Cannot add to an unmodifiable list"); 1665 throw new core.UnsupportedError("Cannot add to an unmodifiable list");
1611 } 1666 }
1612 [core.$remove](element) { 1667 remove(element) {
1613 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1668 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1614 } 1669 }
1615 [core.$removeWhere](test) { 1670 removeWhere(test) {
1616 dart.as(test, dart.functionType(core.bool, [E])); 1671 dart.as(test, dart.functionType(core.bool, [E]));
1617 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1672 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1618 } 1673 }
1619 [core.$retainWhere](test) { 1674 retainWhere(test) {
1620 dart.as(test, dart.functionType(core.bool, [E])); 1675 dart.as(test, dart.functionType(core.bool, [E]));
1621 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1676 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1622 } 1677 }
1623 [core.$sort](compare) { 1678 sort(compare) {
1624 if (compare === void 0) 1679 if (compare === void 0)
1625 compare = null; 1680 compare = null;
1626 dart.as(compare, core.Comparator$(E)); 1681 dart.as(compare, core.Comparator$(E));
1627 throw new core.UnsupportedError("Cannot modify an unmodifiable list"); 1682 throw new core.UnsupportedError("Cannot modify an unmodifiable list");
1628 } 1683 }
1629 [core.$shuffle](random) { 1684 shuffle(random) {
1630 if (random === void 0) 1685 if (random === void 0)
1631 random = null; 1686 random = null;
1632 throw new core.UnsupportedError("Cannot modify an unmodifiable list"); 1687 throw new core.UnsupportedError("Cannot modify an unmodifiable list");
1633 } 1688 }
1634 [core.$clear]() { 1689 clear() {
1635 throw new core.UnsupportedError("Cannot clear an unmodifiable list"); 1690 throw new core.UnsupportedError("Cannot clear an unmodifiable list");
1636 } 1691 }
1637 [core.$removeAt](index) { 1692 removeAt(index) {
1638 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1693 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1639 } 1694 }
1640 [core.$removeLast]() { 1695 removeLast() {
1641 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1696 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1642 } 1697 }
1643 [core.$setRange](start, end, iterable, skipCount) { 1698 setRange(start, end, iterable, skipCount) {
1644 dart.as(iterable, core.Iterable$(E)); 1699 dart.as(iterable, core.Iterable$(E));
1645 if (skipCount === void 0) 1700 if (skipCount === void 0)
1646 skipCount = 0; 1701 skipCount = 0;
1647 throw new core.UnsupportedError("Cannot modify an unmodifiable list"); 1702 throw new core.UnsupportedError("Cannot modify an unmodifiable list");
1648 } 1703 }
1649 [core.$removeRange](start, end) { 1704 removeRange(start, end) {
1650 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1705 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1651 } 1706 }
1652 [core.$replaceRange](start, end, iterable) { 1707 replaceRange(start, end, iterable) {
1653 dart.as(iterable, core.Iterable$(E)); 1708 dart.as(iterable, core.Iterable$(E));
1654 throw new core.UnsupportedError("Cannot remove from an unmodifiable list "); 1709 throw new core.UnsupportedError("Cannot remove from an unmodifiable list ");
1655 } 1710 }
1656 [core.$fillRange](start, end, fillValue) { 1711 fillRange(start, end, fillValue) {
1657 if (fillValue === void 0) 1712 if (fillValue === void 0)
1658 fillValue = null; 1713 fillValue = null;
1659 dart.as(fillValue, E); 1714 dart.as(fillValue, E);
1660 throw new core.UnsupportedError("Cannot modify an unmodifiable list"); 1715 throw new core.UnsupportedError("Cannot modify an unmodifiable list");
1661 } 1716 }
1662 } 1717 }
1663 UnmodifiableListMixin[dart.implements] = () => [core.List$(E)]; 1718 UnmodifiableListMixin[dart.implements] = () => [core.List$(E)];
1719 dart.defineExtensionMembers(UnmodifiableListMixin, [
1720 'set',
1721 'setAll',
1722 'add',
1723 'insert',
1724 'insertAll',
1725 'addAll',
1726 'remove',
1727 'removeWhere',
1728 'retainWhere',
1729 'sort',
1730 'shuffle',
1731 'clear',
1732 'removeAt',
1733 'removeLast',
1734 'setRange',
1735 'removeRange',
1736 'replaceRange',
1737 'fillRange',
1738 'length'
1739 ]);
1664 dart.setSignature(UnmodifiableListMixin, { 1740 dart.setSignature(UnmodifiableListMixin, {
1665 methods: () => ({ 1741 methods: () => ({
1666 [core.$set]: [dart.void, [core.int, E]], 1742 set: [dart.void, [core.int, E]],
1667 [core.$setAll]: [dart.void, [core.int, core.Iterable$(E)]], 1743 setAll: [dart.void, [core.int, core.Iterable$(E)]],
1668 [core.$add]: [dart.void, [E]], 1744 add: [dart.void, [E]],
1669 [core.$insert]: [E, [core.int, E]], 1745 insert: [E, [core.int, E]],
1670 [core.$insertAll]: [dart.void, [core.int, core.Iterable$(E)]], 1746 insertAll: [dart.void, [core.int, core.Iterable$(E)]],
1671 [core.$addAll]: [dart.void, [core.Iterable$(E)]], 1747 addAll: [dart.void, [core.Iterable$(E)]],
1672 [core.$remove]: [core.bool, [core.Object]], 1748 remove: [core.bool, [core.Object]],
1673 [core.$removeWhere]: [dart.void, [dart.functionType(core.bool, [E])]], 1749 removeWhere: [dart.void, [dart.functionType(core.bool, [E])]],
1674 [core.$retainWhere]: [dart.void, [dart.functionType(core.bool, [E])]], 1750 retainWhere: [dart.void, [dart.functionType(core.bool, [E])]],
1675 [core.$sort]: [dart.void, [], [core.Comparator$(E)]], 1751 sort: [dart.void, [], [core.Comparator$(E)]],
1676 [core.$shuffle]: [dart.void, [], [math.Random]], 1752 shuffle: [dart.void, [], [math.Random]],
1677 [core.$clear]: [dart.void, []], 1753 clear: [dart.void, []],
1678 [core.$removeAt]: [E, [core.int]], 1754 removeAt: [E, [core.int]],
1679 [core.$removeLast]: [E, []], 1755 removeLast: [E, []],
1680 [core.$setRange]: [dart.void, [core.int, core.int, core.Iterable$(E)], [ core.int]], 1756 setRange: [dart.void, [core.int, core.int, core.Iterable$(E)], [core.int ]],
1681 [core.$removeRange]: [dart.void, [core.int, core.int]], 1757 removeRange: [dart.void, [core.int, core.int]],
1682 [core.$replaceRange]: [dart.void, [core.int, core.int, core.Iterable$(E) ]], 1758 replaceRange: [dart.void, [core.int, core.int, core.Iterable$(E)]],
1683 [core.$fillRange]: [dart.void, [core.int, core.int], [E]] 1759 fillRange: [dart.void, [core.int, core.int], [E]]
1684 }) 1760 })
1685 }); 1761 });
1686 return UnmodifiableListMixin; 1762 return UnmodifiableListMixin;
1687 }); 1763 });
1688 let UnmodifiableListMixin = UnmodifiableListMixin$(); 1764 let UnmodifiableListMixin = UnmodifiableListMixin$();
1689 let FixedLengthListBase$ = dart.generic(function(E) { 1765 let FixedLengthListBase$ = dart.generic(function(E) {
1690 class FixedLengthListBase extends dart.mixin(collection.ListBase$(E), FixedL engthListMixin$(E)) {} 1766 class FixedLengthListBase extends dart.mixin(collection.ListBase$(E), FixedL engthListMixin$(E)) {}
1691 return FixedLengthListBase; 1767 return FixedLengthListBase;
1692 }); 1768 });
1693 let FixedLengthListBase = FixedLengthListBase$(); 1769 let FixedLengthListBase = FixedLengthListBase$();
1694 let UnmodifiableListBase$ = dart.generic(function(E) { 1770 let UnmodifiableListBase$ = dart.generic(function(E) {
1695 class UnmodifiableListBase extends dart.mixin(collection.ListBase$(E), Unmod ifiableListMixin$(E)) {} 1771 class UnmodifiableListBase extends dart.mixin(collection.ListBase$(E), Unmod ifiableListMixin$(E)) {}
1696 return UnmodifiableListBase; 1772 return UnmodifiableListBase;
1697 }); 1773 });
1698 let UnmodifiableListBase = UnmodifiableListBase$(); 1774 let UnmodifiableListBase = UnmodifiableListBase$();
1699 let _backedList = dart.JsSymbol('_backedList'); 1775 let _backedList = dart.JsSymbol('_backedList');
1700 class _ListIndicesIterable extends ListIterable$(core.int) { 1776 class _ListIndicesIterable extends ListIterable$(core.int) {
1701 _ListIndicesIterable(backedList) { 1777 _ListIndicesIterable(backedList) {
1702 this[_backedList] = backedList; 1778 this[_backedList] = backedList;
1703 super.ListIterable(); 1779 super.ListIterable();
1704 } 1780 }
1705 get [core.$length]() { 1781 get length() {
1706 return this[_backedList][core.$length]; 1782 return this[_backedList].length;
1707 } 1783 }
1708 [core.$elementAt](index) { 1784 elementAt(index) {
1709 core.RangeError.checkValidIndex(index, this); 1785 core.RangeError.checkValidIndex(index, this);
1710 return index; 1786 return index;
1711 } 1787 }
1712 } 1788 }
1713 dart.setSignature(_ListIndicesIterable, { 1789 dart.setSignature(_ListIndicesIterable, {
1714 constructors: () => ({_ListIndicesIterable: [_ListIndicesIterable, [core.Lis t]]}), 1790 constructors: () => ({_ListIndicesIterable: [_ListIndicesIterable, [core.Lis t]]}),
1715 methods: () => ({[core.$elementAt]: [core.int, [core.int]]}) 1791 methods: () => ({elementAt: [core.int, [core.int]]})
1716 }); 1792 });
1717 let _values = dart.JsSymbol('_values'); 1793 let _values = dart.JsSymbol('_values');
1718 let ListMapView$ = dart.generic(function(E) { 1794 let ListMapView$ = dart.generic(function(E) {
1719 class ListMapView extends core.Object { 1795 class ListMapView extends core.Object {
1720 ListMapView(values) { 1796 ListMapView(values) {
1721 this[_values] = values; 1797 this[_values] = values;
1722 } 1798 }
1723 get(key) { 1799 get(key) {
1724 return this.containsKey(key) ? this[_values][core.$get](dart.as(key, cor e.int)) : null; 1800 return this.containsKey(key) ? this[_values][dartx.get](dart.as(key, cor e.int)) : null;
1725 } 1801 }
1726 get length() { 1802 get length() {
1727 return this[_values][core.$length]; 1803 return this[_values].length;
1728 } 1804 }
1729 get values() { 1805 get values() {
1730 return new (SubListIterable$(E))(this[_values], 0, null); 1806 return new (SubListIterable$(E))(this[_values], 0, null);
1731 } 1807 }
1732 get keys() { 1808 get keys() {
1733 return new _ListIndicesIterable(this[_values]); 1809 return new _ListIndicesIterable(this[_values]);
1734 } 1810 }
1735 get isEmpty() { 1811 get isEmpty() {
1736 return this[_values][core.$isEmpty]; 1812 return this[_values][dartx.isEmpty];
1737 } 1813 }
1738 get isNotEmpty() { 1814 get isNotEmpty() {
1739 return this[_values][core.$isNotEmpty]; 1815 return this[_values][dartx.isNotEmpty];
1740 } 1816 }
1741 containsValue(value) { 1817 containsValue(value) {
1742 return this[_values][core.$contains](value); 1818 return this[_values][dartx.contains](value);
1743 } 1819 }
1744 containsKey(key) { 1820 containsKey(key) {
1745 return typeof key == 'number' && dart.notNull(key) >= 0 && dart.notNull( key) < dart.notNull(this.length); 1821 return typeof key == 'number' && dart.notNull(key) >= 0 && dart.notNull( key) < dart.notNull(this.length);
1746 } 1822 }
1747 forEach(f) { 1823 forEach(f) {
1748 dart.as(f, dart.functionType(dart.void, [core.int, E])); 1824 dart.as(f, dart.functionType(dart.void, [core.int, E]));
1749 let length = this[_values][core.$length]; 1825 let length = this[_values].length;
1750 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 1826 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
1751 f(i, this[_values][core.$get](i)); 1827 f(i, this[_values][dartx.get](i));
1752 if (length != this[_values][core.$length]) { 1828 if (length != this[_values].length) {
1753 throw new core.ConcurrentModificationError(this[_values]); 1829 throw new core.ConcurrentModificationError(this[_values]);
1754 } 1830 }
1755 } 1831 }
1756 } 1832 }
1757 set(key, value) { 1833 set(key, value) {
1758 dart.as(value, E); 1834 dart.as(value, E);
1759 throw new core.UnsupportedError("Cannot modify an unmodifiable map"); 1835 throw new core.UnsupportedError("Cannot modify an unmodifiable map");
1760 } 1836 }
1761 putIfAbsent(key, ifAbsent) { 1837 putIfAbsent(key, ifAbsent) {
1762 dart.as(ifAbsent, dart.functionType(E, [])); 1838 dart.as(ifAbsent, dart.functionType(E, []));
(...skipping 30 matching lines...) Expand all
1793 }); 1869 });
1794 return ListMapView; 1870 return ListMapView;
1795 }); 1871 });
1796 let ListMapView = ListMapView$(); 1872 let ListMapView = ListMapView$();
1797 let ReversedListIterable$ = dart.generic(function(E) { 1873 let ReversedListIterable$ = dart.generic(function(E) {
1798 class ReversedListIterable extends ListIterable$(E) { 1874 class ReversedListIterable extends ListIterable$(E) {
1799 ReversedListIterable(source) { 1875 ReversedListIterable(source) {
1800 this[_source] = source; 1876 this[_source] = source;
1801 super.ListIterable(); 1877 super.ListIterable();
1802 } 1878 }
1803 get [core.$length]() { 1879 get length() {
1804 return this[_source][core.$length]; 1880 return this[_source].length;
1805 } 1881 }
1806 [core.$elementAt](index) { 1882 elementAt(index) {
1807 return this[_source][core.$elementAt](dart.notNull(this[_source][core.$l ength]) - 1 - dart.notNull(index)); 1883 return this[_source][dartx.elementAt](dart.notNull(this[_source].length) - 1 - dart.notNull(index));
1808 } 1884 }
1809 } 1885 }
1810 dart.setSignature(ReversedListIterable, { 1886 dart.setSignature(ReversedListIterable, {
1811 constructors: () => ({ReversedListIterable: [ReversedListIterable$(E), [co re.Iterable$(E)]]}), 1887 constructors: () => ({ReversedListIterable: [ReversedListIterable$(E), [co re.Iterable$(E)]]}),
1812 methods: () => ({[core.$elementAt]: [E, [core.int]]}) 1888 methods: () => ({elementAt: [E, [core.int]]})
1813 }); 1889 });
1814 return ReversedListIterable; 1890 return ReversedListIterable;
1815 }); 1891 });
1816 let ReversedListIterable = ReversedListIterable$(); 1892 let ReversedListIterable = ReversedListIterable$();
1817 class UnmodifiableListError extends core.Object { 1893 class UnmodifiableListError extends core.Object {
1818 static add() { 1894 static add() {
1819 return new core.UnsupportedError("Cannot add to unmodifiable List"); 1895 return new core.UnsupportedError("Cannot add to unmodifiable List");
1820 } 1896 }
1821 static change() { 1897 static change() {
1822 return new core.UnsupportedError("Cannot change the content of an unmodifi able List"); 1898 return new core.UnsupportedError("Cannot change the content of an unmodifi able List");
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
1858 }); 1934 });
1859 function makeListFixedLength(growableList) { 1935 function makeListFixedLength(growableList) {
1860 _interceptors.JSArray.markFixedList(growableList); 1936 _interceptors.JSArray.markFixedList(growableList);
1861 return growableList; 1937 return growableList;
1862 } 1938 }
1863 dart.fn(makeListFixedLength, core.List, [core.List]); 1939 dart.fn(makeListFixedLength, core.List, [core.List]);
1864 class Lists extends core.Object { 1940 class Lists extends core.Object {
1865 static copy(src, srcStart, dst, dstStart, count) { 1941 static copy(src, srcStart, dst, dstStart, count) {
1866 if (dart.notNull(srcStart) < dart.notNull(dstStart)) { 1942 if (dart.notNull(srcStart) < dart.notNull(dstStart)) {
1867 for (let i = dart.notNull(srcStart) + dart.notNull(count) - 1, j = dart. notNull(dstStart) + dart.notNull(count) - 1; dart.notNull(i) >= dart.notNull(src Start); i = dart.notNull(i) - 1, j = dart.notNull(j) - 1) { 1943 for (let i = dart.notNull(srcStart) + dart.notNull(count) - 1, j = dart. notNull(dstStart) + dart.notNull(count) - 1; dart.notNull(i) >= dart.notNull(src Start); i = dart.notNull(i) - 1, j = dart.notNull(j) - 1) {
1868 dst[core.$set](j, src[core.$get](i)); 1944 dst[dartx.set](j, src[dartx.get](i));
1869 } 1945 }
1870 } else { 1946 } else {
1871 for (let i = srcStart, j = dstStart; dart.notNull(i) < dart.notNull(srcS tart) + dart.notNull(count); i = dart.notNull(i) + 1, j = dart.notNull(j) + 1) { 1947 for (let i = srcStart, j = dstStart; dart.notNull(i) < dart.notNull(srcS tart) + dart.notNull(count); i = dart.notNull(i) + 1, j = dart.notNull(j) + 1) {
1872 dst[core.$set](j, src[core.$get](i)); 1948 dst[dartx.set](j, src[dartx.get](i));
1873 } 1949 }
1874 } 1950 }
1875 } 1951 }
1876 static areEqual(a, b) { 1952 static areEqual(a, b) {
1877 if (core.identical(a, b)) 1953 if (core.identical(a, b))
1878 return true; 1954 return true;
1879 if (!dart.is(b, core.List)) 1955 if (!dart.is(b, core.List))
1880 return false; 1956 return false;
1881 let length = a[core.$length]; 1957 let length = a.length;
1882 if (!dart.equals(length, dart.dload(b, 'length'))) 1958 if (!dart.equals(length, dart.dload(b, 'length')))
1883 return false; 1959 return false;
1884 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull(i ) + 1) { 1960 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull(i ) + 1) {
1885 if (!dart.notNull(core.identical(a[core.$get](i), dart.dindex(b, i)))) 1961 if (!dart.notNull(core.identical(a[dartx.get](i), dart.dindex(b, i))))
1886 return false; 1962 return false;
1887 } 1963 }
1888 return true; 1964 return true;
1889 } 1965 }
1890 static indexOf(a, element, startIndex, endIndex) { 1966 static indexOf(a, element, startIndex, endIndex) {
1891 if (dart.notNull(startIndex) >= dart.notNull(a[core.$length])) { 1967 if (dart.notNull(startIndex) >= dart.notNull(a.length)) {
1892 return -1; 1968 return -1;
1893 } 1969 }
1894 if (dart.notNull(startIndex) < 0) { 1970 if (dart.notNull(startIndex) < 0) {
1895 startIndex = 0; 1971 startIndex = 0;
1896 } 1972 }
1897 for (let i = startIndex; dart.notNull(i) < dart.notNull(endIndex); i = dar t.notNull(i) + 1) { 1973 for (let i = startIndex; dart.notNull(i) < dart.notNull(endIndex); i = dar t.notNull(i) + 1) {
1898 if (dart.equals(a[core.$get](i), element)) { 1974 if (dart.equals(a[dartx.get](i), element)) {
1899 return i; 1975 return i;
1900 } 1976 }
1901 } 1977 }
1902 return -1; 1978 return -1;
1903 } 1979 }
1904 static lastIndexOf(a, element, startIndex) { 1980 static lastIndexOf(a, element, startIndex) {
1905 if (dart.notNull(startIndex) < 0) { 1981 if (dart.notNull(startIndex) < 0) {
1906 return -1; 1982 return -1;
1907 } 1983 }
1908 if (dart.notNull(startIndex) >= dart.notNull(a[core.$length])) { 1984 if (dart.notNull(startIndex) >= dart.notNull(a.length)) {
1909 startIndex = dart.notNull(a[core.$length]) - 1; 1985 startIndex = dart.notNull(a.length) - 1;
1910 } 1986 }
1911 for (let i = startIndex; dart.notNull(i) >= 0; i = dart.notNull(i) - 1) { 1987 for (let i = startIndex; dart.notNull(i) >= 0; i = dart.notNull(i) - 1) {
1912 if (dart.equals(a[core.$get](i), element)) { 1988 if (dart.equals(a[dartx.get](i), element)) {
1913 return i; 1989 return i;
1914 } 1990 }
1915 } 1991 }
1916 return -1; 1992 return -1;
1917 } 1993 }
1918 static indicesCheck(a, start, end) { 1994 static indicesCheck(a, start, end) {
1919 core.RangeError.checkValidRange(start, end, a[core.$length]); 1995 core.RangeError.checkValidRange(start, end, a.length);
1920 } 1996 }
1921 static rangeCheck(a, start, length) { 1997 static rangeCheck(a, start, length) {
1922 core.RangeError.checkNotNegative(length); 1998 core.RangeError.checkNotNegative(length);
1923 core.RangeError.checkNotNegative(start); 1999 core.RangeError.checkNotNegative(start);
1924 if (dart.notNull(start) + dart.notNull(length) > dart.notNull(a[core.$leng th])) { 2000 if (dart.notNull(start) + dart.notNull(length) > dart.notNull(a.length)) {
1925 let message = `${start} + ${length} must be in the range [0..${a[core.$l ength]}]`; 2001 let message = `${start} + ${length} must be in the range [0..${a.length} ]`;
1926 throw new core.RangeError.range(length, 0, dart.notNull(a[core.$length]) - dart.notNull(start), "length", message); 2002 throw new core.RangeError.range(length, 0, dart.notNull(a.length) - dart .notNull(start), "length", message);
1927 } 2003 }
1928 } 2004 }
1929 } 2005 }
1930 dart.setSignature(Lists, { 2006 dart.setSignature(Lists, {
1931 statics: () => ({ 2007 statics: () => ({
1932 copy: [dart.void, [core.List, core.int, core.List, core.int, core.int]], 2008 copy: [dart.void, [core.List, core.int, core.List, core.int, core.int]],
1933 areEqual: [core.bool, [core.List, core.Object]], 2009 areEqual: [core.bool, [core.List, core.Object]],
1934 indexOf: [core.int, [core.List, core.Object, core.int, core.int]], 2010 indexOf: [core.int, [core.List, core.Object, core.int, core.int]],
1935 lastIndexOf: [core.int, [core.List, core.Object, core.int]], 2011 lastIndexOf: [core.int, [core.List, core.Object, core.int]],
1936 indicesCheck: [dart.void, [core.List, core.int, core.int]], 2012 indicesCheck: [dart.void, [core.List, core.int, core.int]],
1937 rangeCheck: [dart.void, [core.List, core.int, core.int]] 2013 rangeCheck: [dart.void, [core.List, core.int, core.int]]
1938 }), 2014 }),
1939 names: ['copy', 'areEqual', 'indexOf', 'lastIndexOf', 'indicesCheck', 'range Check'] 2015 names: ['copy', 'areEqual', 'indexOf', 'lastIndexOf', 'indicesCheck', 'range Check']
1940 }); 2016 });
1941 exports.printToZone = null; 2017 exports.printToZone = null;
1942 function printToConsole(line) { 2018 function printToConsole(line) {
1943 _js_primitives.printString(`${line}`); 2019 _js_primitives.printString(`${line}`);
1944 } 2020 }
1945 dart.fn(printToConsole, dart.void, [core.String]); 2021 dart.fn(printToConsole, dart.void, [core.String]);
1946 class Sort extends core.Object { 2022 class Sort extends core.Object {
1947 static sort(a, compare) { 2023 static sort(a, compare) {
1948 Sort._doSort(a, 0, dart.notNull(a[core.$length]) - 1, compare); 2024 Sort._doSort(a, 0, dart.notNull(a.length) - 1, compare);
1949 } 2025 }
1950 static sortRange(a, from, to, compare) { 2026 static sortRange(a, from, to, compare) {
1951 if (dart.notNull(from) < 0 || dart.notNull(to) > dart.notNull(a[core.$leng th]) || dart.notNull(to) < dart.notNull(from)) { 2027 if (dart.notNull(from) < 0 || dart.notNull(to) > dart.notNull(a.length) || dart.notNull(to) < dart.notNull(from)) {
1952 throw "OutOfRange"; 2028 throw "OutOfRange";
1953 } 2029 }
1954 Sort._doSort(a, from, dart.notNull(to) - 1, compare); 2030 Sort._doSort(a, from, dart.notNull(to) - 1, compare);
1955 } 2031 }
1956 static _doSort(a, left, right, compare) { 2032 static _doSort(a, left, right, compare) {
1957 if (dart.notNull(right) - dart.notNull(left) <= dart.notNull(Sort._INSERTI ON_SORT_THRESHOLD)) { 2033 if (dart.notNull(right) - dart.notNull(left) <= dart.notNull(Sort._INSERTI ON_SORT_THRESHOLD)) {
1958 Sort._insertionSort(a, left, right, compare); 2034 Sort._insertionSort(a, left, right, compare);
1959 } else { 2035 } else {
1960 Sort._dualPivotQuicksort(a, left, right, compare); 2036 Sort._dualPivotQuicksort(a, left, right, compare);
1961 } 2037 }
1962 } 2038 }
1963 static _insertionSort(a, left, right, compare) { 2039 static _insertionSort(a, left, right, compare) {
1964 for (let i = dart.notNull(left) + 1; dart.notNull(i) <= dart.notNull(right ); i = dart.notNull(i) + 1) { 2040 for (let i = dart.notNull(left) + 1; dart.notNull(i) <= dart.notNull(right ); i = dart.notNull(i) + 1) {
1965 let el = a[core.$get](i); 2041 let el = a[dartx.get](i);
1966 let j = i; 2042 let j = i;
1967 while (dart.notNull(j) > dart.notNull(left) && dart.notNull(dart.dcall(c ompare, a[core.$get](dart.notNull(j) - 1), el)) > 0) { 2043 while (dart.notNull(j) > dart.notNull(left) && dart.notNull(dart.dcall(c ompare, a[dartx.get](dart.notNull(j) - 1), el)) > 0) {
1968 a[core.$set](j, a[core.$get](dart.notNull(j) - 1)); 2044 a[dartx.set](j, a[dartx.get](dart.notNull(j) - 1));
1969 j = dart.notNull(j) - 1; 2045 j = dart.notNull(j) - 1;
1970 } 2046 }
1971 a[core.$set](j, el); 2047 a[dartx.set](j, el);
1972 } 2048 }
1973 } 2049 }
1974 static _dualPivotQuicksort(a, left, right, compare) { 2050 static _dualPivotQuicksort(a, left, right, compare) {
1975 dart.assert(dart.notNull(right) - dart.notNull(left) > dart.notNull(Sort._ INSERTION_SORT_THRESHOLD)); 2051 dart.assert(dart.notNull(right) - dart.notNull(left) > dart.notNull(Sort._ INSERTION_SORT_THRESHOLD));
1976 let sixth = ((dart.notNull(right) - dart.notNull(left) + 1) / 6).truncate( ); 2052 let sixth = ((dart.notNull(right) - dart.notNull(left) + 1) / 6).truncate( );
1977 let index1 = dart.notNull(left) + dart.notNull(sixth); 2053 let index1 = dart.notNull(left) + dart.notNull(sixth);
1978 let index5 = dart.notNull(right) - dart.notNull(sixth); 2054 let index5 = dart.notNull(right) - dart.notNull(sixth);
1979 let index3 = ((dart.notNull(left) + dart.notNull(right)) / 2).truncate(); 2055 let index3 = ((dart.notNull(left) + dart.notNull(right)) / 2).truncate();
1980 let index2 = dart.notNull(index3) - dart.notNull(sixth); 2056 let index2 = dart.notNull(index3) - dart.notNull(sixth);
1981 let index4 = dart.notNull(index3) + dart.notNull(sixth); 2057 let index4 = dart.notNull(index3) + dart.notNull(sixth);
1982 let el1 = a[core.$get](index1); 2058 let el1 = a[dartx.get](index1);
1983 let el2 = a[core.$get](index2); 2059 let el2 = a[dartx.get](index2);
1984 let el3 = a[core.$get](index3); 2060 let el3 = a[dartx.get](index3);
1985 let el4 = a[core.$get](index4); 2061 let el4 = a[dartx.get](index4);
1986 let el5 = a[core.$get](index5); 2062 let el5 = a[dartx.get](index5);
1987 if (dart.notNull(dart.dcall(compare, el1, el2)) > 0) { 2063 if (dart.notNull(dart.dcall(compare, el1, el2)) > 0) {
1988 let t = el1; 2064 let t = el1;
1989 el1 = el2; 2065 el1 = el2;
1990 el2 = t; 2066 el2 = t;
1991 } 2067 }
1992 if (dart.notNull(dart.dcall(compare, el4, el5)) > 0) { 2068 if (dart.notNull(dart.dcall(compare, el4, el5)) > 0) {
1993 let t = el4; 2069 let t = el4;
1994 el4 = el5; 2070 el4 = el5;
1995 el5 = t; 2071 el5 = t;
1996 } 2072 }
(...skipping 27 matching lines...) Expand all
2024 el2 = el3; 2100 el2 = el3;
2025 el3 = t; 2101 el3 = t;
2026 } 2102 }
2027 if (dart.notNull(dart.dcall(compare, el4, el5)) > 0) { 2103 if (dart.notNull(dart.dcall(compare, el4, el5)) > 0) {
2028 let t = el4; 2104 let t = el4;
2029 el4 = el5; 2105 el4 = el5;
2030 el5 = t; 2106 el5 = t;
2031 } 2107 }
2032 let pivot1 = el2; 2108 let pivot1 = el2;
2033 let pivot2 = el4; 2109 let pivot2 = el4;
2034 a[core.$set](index1, el1); 2110 a[dartx.set](index1, el1);
2035 a[core.$set](index3, el3); 2111 a[dartx.set](index3, el3);
2036 a[core.$set](index5, el5); 2112 a[dartx.set](index5, el5);
2037 a[core.$set](index2, a[core.$get](left)); 2113 a[dartx.set](index2, a[dartx.get](left));
2038 a[core.$set](index4, a[core.$get](right)); 2114 a[dartx.set](index4, a[dartx.get](right));
2039 let less = dart.notNull(left) + 1; 2115 let less = dart.notNull(left) + 1;
2040 let great = dart.notNull(right) - 1; 2116 let great = dart.notNull(right) - 1;
2041 let pivots_are_equal = dart.dcall(compare, pivot1, pivot2) == 0; 2117 let pivots_are_equal = dart.dcall(compare, pivot1, pivot2) == 0;
2042 if (pivots_are_equal) { 2118 if (pivots_are_equal) {
2043 let pivot = pivot1; 2119 let pivot = pivot1;
2044 for (let k = less; dart.notNull(k) <= dart.notNull(great); k = dart.notN ull(k) + 1) { 2120 for (let k = less; dart.notNull(k) <= dart.notNull(great); k = dart.notN ull(k) + 1) {
2045 let ak = a[core.$get](k); 2121 let ak = a[dartx.get](k);
2046 let comp = dart.dcall(compare, ak, pivot); 2122 let comp = dart.dcall(compare, ak, pivot);
2047 if (comp == 0) 2123 if (comp == 0)
2048 continue; 2124 continue;
2049 if (dart.notNull(comp) < 0) { 2125 if (dart.notNull(comp) < 0) {
2050 if (k != less) { 2126 if (k != less) {
2051 a[core.$set](k, a[core.$get](less)); 2127 a[dartx.set](k, a[dartx.get](less));
2052 a[core.$set](less, ak); 2128 a[dartx.set](less, ak);
2053 } 2129 }
2054 less = dart.notNull(less) + 1; 2130 less = dart.notNull(less) + 1;
2055 } else { 2131 } else {
2056 while (true) { 2132 while (true) {
2057 comp = dart.dcall(compare, a[core.$get](great), pivot); 2133 comp = dart.dcall(compare, a[dartx.get](great), pivot);
2058 if (dart.notNull(comp) > 0) { 2134 if (dart.notNull(comp) > 0) {
2059 great = dart.notNull(great) - 1; 2135 great = dart.notNull(great) - 1;
2060 continue; 2136 continue;
2061 } else if (dart.notNull(comp) < 0) { 2137 } else if (dart.notNull(comp) < 0) {
2062 a[core.$set](k, a[core.$get](less)); 2138 a[dartx.set](k, a[dartx.get](less));
2063 a[core.$set]((() => { 2139 a[dartx.set]((() => {
2064 let x = less; 2140 let x = less;
2065 less = dart.notNull(x) + 1; 2141 less = dart.notNull(x) + 1;
2066 return x; 2142 return x;
2067 })(), a[core.$get](great)); 2143 })(), a[dartx.get](great));
2068 a[core.$set]((() => { 2144 a[dartx.set]((() => {
2069 let x = great; 2145 let x = great;
2070 great = dart.notNull(x) - 1; 2146 great = dart.notNull(x) - 1;
2071 return x; 2147 return x;
2072 })(), ak); 2148 })(), ak);
2073 break; 2149 break;
2074 } else { 2150 } else {
2075 a[core.$set](k, a[core.$get](great)); 2151 a[dartx.set](k, a[dartx.get](great));
2076 a[core.$set]((() => { 2152 a[dartx.set]((() => {
2077 let x = great; 2153 let x = great;
2078 great = dart.notNull(x) - 1; 2154 great = dart.notNull(x) - 1;
2079 return x; 2155 return x;
2080 })(), ak); 2156 })(), ak);
2081 break; 2157 break;
2082 } 2158 }
2083 } 2159 }
2084 } 2160 }
2085 } 2161 }
2086 } else { 2162 } else {
2087 for (let k = less; dart.notNull(k) <= dart.notNull(great); k = dart.notN ull(k) + 1) { 2163 for (let k = less; dart.notNull(k) <= dart.notNull(great); k = dart.notN ull(k) + 1) {
2088 let ak = a[core.$get](k); 2164 let ak = a[dartx.get](k);
2089 let comp_pivot1 = dart.dcall(compare, ak, pivot1); 2165 let comp_pivot1 = dart.dcall(compare, ak, pivot1);
2090 if (dart.notNull(comp_pivot1) < 0) { 2166 if (dart.notNull(comp_pivot1) < 0) {
2091 if (k != less) { 2167 if (k != less) {
2092 a[core.$set](k, a[core.$get](less)); 2168 a[dartx.set](k, a[dartx.get](less));
2093 a[core.$set](less, ak); 2169 a[dartx.set](less, ak);
2094 } 2170 }
2095 less = dart.notNull(less) + 1; 2171 less = dart.notNull(less) + 1;
2096 } else { 2172 } else {
2097 let comp_pivot2 = dart.dcall(compare, ak, pivot2); 2173 let comp_pivot2 = dart.dcall(compare, ak, pivot2);
2098 if (dart.notNull(comp_pivot2) > 0) { 2174 if (dart.notNull(comp_pivot2) > 0) {
2099 while (true) { 2175 while (true) {
2100 let comp = dart.dcall(compare, a[core.$get](great), pivot2); 2176 let comp = dart.dcall(compare, a[dartx.get](great), pivot2);
2101 if (dart.notNull(comp) > 0) { 2177 if (dart.notNull(comp) > 0) {
2102 great = dart.notNull(great) - 1; 2178 great = dart.notNull(great) - 1;
2103 if (dart.notNull(great) < dart.notNull(k)) 2179 if (dart.notNull(great) < dart.notNull(k))
2104 break; 2180 break;
2105 continue; 2181 continue;
2106 } else { 2182 } else {
2107 comp = dart.dcall(compare, a[core.$get](great), pivot1); 2183 comp = dart.dcall(compare, a[dartx.get](great), pivot1);
2108 if (dart.notNull(comp) < 0) { 2184 if (dart.notNull(comp) < 0) {
2109 a[core.$set](k, a[core.$get](less)); 2185 a[dartx.set](k, a[dartx.get](less));
2110 a[core.$set]((() => { 2186 a[dartx.set]((() => {
2111 let x = less; 2187 let x = less;
2112 less = dart.notNull(x) + 1; 2188 less = dart.notNull(x) + 1;
2113 return x; 2189 return x;
2114 })(), a[core.$get](great)); 2190 })(), a[dartx.get](great));
2115 a[core.$set]((() => { 2191 a[dartx.set]((() => {
2116 let x = great; 2192 let x = great;
2117 great = dart.notNull(x) - 1; 2193 great = dart.notNull(x) - 1;
2118 return x; 2194 return x;
2119 })(), ak); 2195 })(), ak);
2120 } else { 2196 } else {
2121 a[core.$set](k, a[core.$get](great)); 2197 a[dartx.set](k, a[dartx.get](great));
2122 a[core.$set]((() => { 2198 a[dartx.set]((() => {
2123 let x = great; 2199 let x = great;
2124 great = dart.notNull(x) - 1; 2200 great = dart.notNull(x) - 1;
2125 return x; 2201 return x;
2126 })(), ak); 2202 })(), ak);
2127 } 2203 }
2128 break; 2204 break;
2129 } 2205 }
2130 } 2206 }
2131 } 2207 }
2132 } 2208 }
2133 } 2209 }
2134 } 2210 }
2135 a[core.$set](left, a[core.$get](dart.notNull(less) - 1)); 2211 a[dartx.set](left, a[dartx.get](dart.notNull(less) - 1));
2136 a[core.$set](dart.notNull(less) - 1, pivot1); 2212 a[dartx.set](dart.notNull(less) - 1, pivot1);
2137 a[core.$set](right, a[core.$get](dart.notNull(great) + 1)); 2213 a[dartx.set](right, a[dartx.get](dart.notNull(great) + 1));
2138 a[core.$set](dart.notNull(great) + 1, pivot2); 2214 a[dartx.set](dart.notNull(great) + 1, pivot2);
2139 Sort._doSort(a, left, dart.notNull(less) - 2, compare); 2215 Sort._doSort(a, left, dart.notNull(less) - 2, compare);
2140 Sort._doSort(a, dart.notNull(great) + 2, right, compare); 2216 Sort._doSort(a, dart.notNull(great) + 2, right, compare);
2141 if (pivots_are_equal) { 2217 if (pivots_are_equal) {
2142 return; 2218 return;
2143 } 2219 }
2144 if (dart.notNull(less) < dart.notNull(index1) && dart.notNull(great) > dar t.notNull(index5)) { 2220 if (dart.notNull(less) < dart.notNull(index1) && dart.notNull(great) > dar t.notNull(index5)) {
2145 while (dart.dcall(compare, a[core.$get](less), pivot1) == 0) { 2221 while (dart.dcall(compare, a[dartx.get](less), pivot1) == 0) {
2146 less = dart.notNull(less) + 1; 2222 less = dart.notNull(less) + 1;
2147 } 2223 }
2148 while (dart.dcall(compare, a[core.$get](great), pivot2) == 0) { 2224 while (dart.dcall(compare, a[dartx.get](great), pivot2) == 0) {
2149 great = dart.notNull(great) - 1; 2225 great = dart.notNull(great) - 1;
2150 } 2226 }
2151 for (let k = less; dart.notNull(k) <= dart.notNull(great); k = dart.notN ull(k) + 1) { 2227 for (let k = less; dart.notNull(k) <= dart.notNull(great); k = dart.notN ull(k) + 1) {
2152 let ak = a[core.$get](k); 2228 let ak = a[dartx.get](k);
2153 let comp_pivot1 = dart.dcall(compare, ak, pivot1); 2229 let comp_pivot1 = dart.dcall(compare, ak, pivot1);
2154 if (comp_pivot1 == 0) { 2230 if (comp_pivot1 == 0) {
2155 if (k != less) { 2231 if (k != less) {
2156 a[core.$set](k, a[core.$get](less)); 2232 a[dartx.set](k, a[dartx.get](less));
2157 a[core.$set](less, ak); 2233 a[dartx.set](less, ak);
2158 } 2234 }
2159 less = dart.notNull(less) + 1; 2235 less = dart.notNull(less) + 1;
2160 } else { 2236 } else {
2161 let comp_pivot2 = dart.dcall(compare, ak, pivot2); 2237 let comp_pivot2 = dart.dcall(compare, ak, pivot2);
2162 if (comp_pivot2 == 0) { 2238 if (comp_pivot2 == 0) {
2163 while (true) { 2239 while (true) {
2164 let comp = dart.dcall(compare, a[core.$get](great), pivot2); 2240 let comp = dart.dcall(compare, a[dartx.get](great), pivot2);
2165 if (comp == 0) { 2241 if (comp == 0) {
2166 great = dart.notNull(great) - 1; 2242 great = dart.notNull(great) - 1;
2167 if (dart.notNull(great) < dart.notNull(k)) 2243 if (dart.notNull(great) < dart.notNull(k))
2168 break; 2244 break;
2169 continue; 2245 continue;
2170 } else { 2246 } else {
2171 comp = dart.dcall(compare, a[core.$get](great), pivot1); 2247 comp = dart.dcall(compare, a[dartx.get](great), pivot1);
2172 if (dart.notNull(comp) < 0) { 2248 if (dart.notNull(comp) < 0) {
2173 a[core.$set](k, a[core.$get](less)); 2249 a[dartx.set](k, a[dartx.get](less));
2174 a[core.$set]((() => { 2250 a[dartx.set]((() => {
2175 let x = less; 2251 let x = less;
2176 less = dart.notNull(x) + 1; 2252 less = dart.notNull(x) + 1;
2177 return x; 2253 return x;
2178 })(), a[core.$get](great)); 2254 })(), a[dartx.get](great));
2179 a[core.$set]((() => { 2255 a[dartx.set]((() => {
2180 let x = great; 2256 let x = great;
2181 great = dart.notNull(x) - 1; 2257 great = dart.notNull(x) - 1;
2182 return x; 2258 return x;
2183 })(), ak); 2259 })(), ak);
2184 } else { 2260 } else {
2185 a[core.$set](k, a[core.$get](great)); 2261 a[dartx.set](k, a[dartx.get](great));
2186 a[core.$set]((() => { 2262 a[dartx.set]((() => {
2187 let x = great; 2263 let x = great;
2188 great = dart.notNull(x) - 1; 2264 great = dart.notNull(x) - 1;
2189 return x; 2265 return x;
2190 })(), ak); 2266 })(), ak);
2191 } 2267 }
2192 break; 2268 break;
2193 } 2269 }
2194 } 2270 }
2195 } 2271 }
2196 } 2272 }
(...skipping 24 matching lines...) Expand all
2221 this[_name] = name; 2297 this[_name] = name;
2222 } 2298 }
2223 validated(name) { 2299 validated(name) {
2224 this[_name] = Symbol.validatePublicSymbol(name); 2300 this[_name] = Symbol.validatePublicSymbol(name);
2225 } 2301 }
2226 ['=='](other) { 2302 ['=='](other) {
2227 return dart.is(other, Symbol) && this[_name] == other[_name]; 2303 return dart.is(other, Symbol) && this[_name] == other[_name];
2228 } 2304 }
2229 get hashCode() { 2305 get hashCode() {
2230 let arbitraryPrime = 664597; 2306 let arbitraryPrime = 664597;
2231 return 536870911 & dart.notNull(arbitraryPrime) * dart.notNull(dart.hashCo de(this[_name])); 2307 return 536870911 & dart.notNull(arbitraryPrime) * dart.notNull(dart[dartx. hashCode](this[_name]));
2232 } 2308 }
2233 toString() { 2309 toString() {
2234 return `Symbol("${this[_name]}")`; 2310 return `Symbol("${this[_name]}")`;
2235 } 2311 }
2236 static getName(symbol) { 2312 static getName(symbol) {
2237 return symbol[_name]; 2313 return symbol[_name];
2238 } 2314 }
2239 static validatePublicSymbol(name) { 2315 static validatePublicSymbol(name) {
2240 if (dart.notNull(name.isEmpty) || dart.notNull(Symbol.publicSymbolPattern. hasMatch(name))) 2316 if (dart.notNull(name[dartx.isEmpty]) || dart.notNull(Symbol.publicSymbolP attern.hasMatch(name)))
2241 return name; 2317 return name;
2242 if (name.startsWith('_')) { 2318 if (name[dartx.startsWith]('_')) {
2243 throw new core.ArgumentError(`"${name}" is a private identifier`); 2319 throw new core.ArgumentError(`"${name}" is a private identifier`);
2244 } 2320 }
2245 throw new core.ArgumentError(`"${name}" is not a valid (qualified) symbol name`); 2321 throw new core.ArgumentError(`"${name}" is not a valid (qualified) symbol name`);
2246 } 2322 }
2247 static isValidSymbol(name) { 2323 static isValidSymbol(name) {
2248 return dart.notNull(name.isEmpty) || dart.notNull(Symbol.symbolPattern.has Match(name)); 2324 return dart.notNull(name[dartx.isEmpty]) || dart.notNull(Symbol.symbolPatt ern.hasMatch(name));
2249 } 2325 }
2250 } 2326 }
2251 Symbol[dart.implements] = () => [core.Symbol]; 2327 Symbol[dart.implements] = () => [core.Symbol];
2252 dart.defineNamedConstructor(Symbol, 'unvalidated'); 2328 dart.defineNamedConstructor(Symbol, 'unvalidated');
2253 dart.defineNamedConstructor(Symbol, 'validated'); 2329 dart.defineNamedConstructor(Symbol, 'validated');
2254 dart.setSignature(Symbol, { 2330 dart.setSignature(Symbol, {
2255 constructors: () => ({ 2331 constructors: () => ({
2256 Symbol: [Symbol, [core.String]], 2332 Symbol: [Symbol, [core.String]],
2257 unvalidated: [Symbol, [core.String]], 2333 unvalidated: [Symbol, [core.String]],
2258 validated: [Symbol, [core.String]] 2334 validated: [Symbol, [core.String]]
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
2345 exports.ReversedListIterable = ReversedListIterable; 2421 exports.ReversedListIterable = ReversedListIterable;
2346 exports.UnmodifiableListError = UnmodifiableListError; 2422 exports.UnmodifiableListError = UnmodifiableListError;
2347 exports.NonGrowableListError = NonGrowableListError; 2423 exports.NonGrowableListError = NonGrowableListError;
2348 exports.makeListFixedLength = makeListFixedLength; 2424 exports.makeListFixedLength = makeListFixedLength;
2349 exports.Lists = Lists; 2425 exports.Lists = Lists;
2350 exports.printToConsole = printToConsole; 2426 exports.printToConsole = printToConsole;
2351 exports.Sort = Sort; 2427 exports.Sort = Sort;
2352 exports.Symbol = Symbol; 2428 exports.Symbol = Symbol;
2353 exports.POWERS_OF_TEN = POWERS_OF_TEN; 2429 exports.POWERS_OF_TEN = POWERS_OF_TEN;
2354 })(_internal, core, collection, math, _interceptors, _js_primitives); 2430 })(_internal, core, collection, math, _interceptors, _js_primitives);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698