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

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

Issue 1048863003: Handle for-in loops (Closed) Base URL: https://github.com/dart-lang/dev_compiler.git@master
Patch Set: Rebase Created 5 years, 8 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
« no previous file with comments | « lib/runtime/dart/_js_names.js ('k') | lib/src/checker/checker.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 var collection; 1 var collection;
2 (function(exports) { 2 (function(exports) {
3 'use strict'; 3 'use strict';
4 let _source = Symbol('_source'); 4 let _source = Symbol('_source');
5 let UnmodifiableListView$ = dart.generic(function(E) { 5 let UnmodifiableListView$ = dart.generic(function(E) {
6 class UnmodifiableListView extends _internal.UnmodifiableListBase$(E) { 6 class UnmodifiableListView extends _internal.UnmodifiableListBase$(E) {
7 UnmodifiableListView(source) { 7 UnmodifiableListView(source) {
8 this[_source] = source; 8 this[_source] = source;
9 super.UnmodifiableListBase(); 9 super.UnmodifiableListBase();
10 } 10 }
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 } 343 }
344 return SetBase; 344 return SetBase;
345 }); 345 });
346 let SetBase = SetBase$(dart.dynamic); 346 let SetBase = SetBase$(dart.dynamic);
347 let _HashSetBase$ = dart.generic(function(E) { 347 let _HashSetBase$ = dart.generic(function(E) {
348 class _HashSetBase extends SetBase$(E) { 348 class _HashSetBase extends SetBase$(E) {
349 difference(other) { 349 difference(other) {
350 let result = this[_newSet](); 350 let result = this[_newSet]();
351 for (let element of this) { 351 for (let element of this) {
352 if (!dart.notNull(other.contains(element))) 352 if (!dart.notNull(other.contains(element)))
353 result.add(dart.as(element, E)); 353 result.add(element);
354 } 354 }
355 return result; 355 return result;
356 } 356 }
357 intersection(other) { 357 intersection(other) {
358 let result = this[_newSet](); 358 let result = this[_newSet]();
359 for (let element of this) { 359 for (let element of this) {
360 if (other.contains(element)) 360 if (other.contains(element))
361 result.add(dart.as(element, E)); 361 result.add(element);
362 } 362 }
363 return result; 363 return result;
364 } 364 }
365 toSet() { 365 toSet() {
366 return ((_) => { 366 return ((_) => {
367 _.addAll(this); 367 _.addAll(this);
368 return _; 368 return _;
369 }).bind(this)(this[_newSet]()); 369 }).bind(this)(this[_newSet]());
370 } 370 }
371 } 371 }
(...skipping 28 matching lines...) Expand all
400 equals = dart.closureWrap(_defaultEquals, "(E, E) → bool"); 400 equals = dart.closureWrap(_defaultEquals, "(E, E) → bool");
401 } 401 }
402 } 402 }
403 return new _CustomHashSet(equals, hashCode, isValidKey); 403 return new _CustomHashSet(equals, hashCode, isValidKey);
404 } 404 }
405 identity() { 405 identity() {
406 return new _IdentityHashSet(); 406 return new _IdentityHashSet();
407 } 407 }
408 from(elements) { 408 from(elements) {
409 let result = new HashSet(); 409 let result = new HashSet();
410 for (let e of elements) 410 for (let e of dart.as(elements, core.Iterable$(E)))
411 result.add(e); 411 result.add(e);
412 return result; 412 return result;
413 } 413 }
414 } 414 }
415 HashSet[dart.implements] = [core.Set$(E)]; 415 HashSet[dart.implements] = [core.Set$(E)];
416 dart.defineNamedConstructor(HashSet, 'identity'); 416 dart.defineNamedConstructor(HashSet, 'identity');
417 dart.defineNamedConstructor(HashSet, 'from'); 417 dart.defineNamedConstructor(HashSet, 'from');
418 return HashSet; 418 return HashSet;
419 }); 419 });
420 let HashSet = HashSet$(dart.dynamic); 420 let HashSet = HashSet$(dart.dynamic);
(...skipping 1717 matching lines...) Expand 10 before | Expand all | Expand 10 after
2138 let DoubleLinkedQueue$ = dart.generic(function(E) { 2138 let DoubleLinkedQueue$ = dart.generic(function(E) {
2139 class DoubleLinkedQueue extends IterableBase$(E) { 2139 class DoubleLinkedQueue extends IterableBase$(E) {
2140 DoubleLinkedQueue() { 2140 DoubleLinkedQueue() {
2141 this[_sentinel] = null; 2141 this[_sentinel] = null;
2142 this[_elementCount] = 0; 2142 this[_elementCount] = 0;
2143 super.IterableBase(); 2143 super.IterableBase();
2144 this[_sentinel] = new _DoubleLinkedQueueEntrySentinel(); 2144 this[_sentinel] = new _DoubleLinkedQueueEntrySentinel();
2145 } 2145 }
2146 from(elements) { 2146 from(elements) {
2147 let list = dart.as(new DoubleLinkedQueue(), Queue$(E)); 2147 let list = dart.as(new DoubleLinkedQueue(), Queue$(E));
2148 for (let e of elements) { 2148 for (let e of dart.as(elements, core.Iterable$(E))) {
2149 list.addLast(e); 2149 list.addLast(e);
2150 } 2150 }
2151 return dart.as(list, DoubleLinkedQueue$(E)); 2151 return dart.as(list, DoubleLinkedQueue$(E));
2152 } 2152 }
2153 get length() { 2153 get length() {
2154 return this[_elementCount]; 2154 return this[_elementCount];
2155 } 2155 }
2156 addLast(value) { 2156 addLast(value) {
2157 this[_sentinel].prepend(value); 2157 this[_sentinel].prepend(value);
2158 this[_elementCount] = dart.notNull(this[_elementCount]) + 1; 2158 this[_elementCount] = dart.notNull(this[_elementCount]) + 1;
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
2321 let sourceList = elements; 2321 let sourceList = elements;
2322 queue[_table].setRange(0, length, dart.as(sourceList, core.Iterable$(E )), 0); 2322 queue[_table].setRange(0, length, dart.as(sourceList, core.Iterable$(E )), 0);
2323 queue[_tail] = length; 2323 queue[_tail] = length;
2324 return queue; 2324 return queue;
2325 } else { 2325 } else {
2326 let capacity = ListQueue[_INITIAL_CAPACITY]; 2326 let capacity = ListQueue[_INITIAL_CAPACITY];
2327 if (dart.is(elements, _internal.EfficientLength)) { 2327 if (dart.is(elements, _internal.EfficientLength)) {
2328 capacity = elements.length; 2328 capacity = elements.length;
2329 } 2329 }
2330 let result = new ListQueue(capacity); 2330 let result = new ListQueue(capacity);
2331 for (let element of elements) { 2331 for (let element of dart.as(elements, core.Iterable$(E))) {
2332 result.addLast(element); 2332 result.addLast(element);
2333 } 2333 }
2334 return result; 2334 return result;
2335 } 2335 }
2336 } 2336 }
2337 get iterator() { 2337 get iterator() {
2338 return new _ListQueueIterator(this); 2338 return new _ListQueueIterator(this);
2339 } 2339 }
2340 forEach(action) { 2340 forEach(action) {
2341 let modificationCount = this[_modificationCount]; 2341 let modificationCount = this[_modificationCount];
(...skipping 831 matching lines...) Expand 10 before | Expand all | Expand 10 after
3173 this[_comparator] = dart.as(compare == null ? core.Comparable.compare : compare, core.Comparator); 3173 this[_comparator] = dart.as(compare == null ? core.Comparable.compare : compare, core.Comparator);
3174 this[_validKey] = dart.as(isValidKey != null ? isValidKey : (v) => dart. is(v, E), _Predicate); 3174 this[_validKey] = dart.as(isValidKey != null ? isValidKey : (v) => dart. is(v, E), _Predicate);
3175 super._SplayTree(); 3175 super._SplayTree();
3176 } 3176 }
3177 from(elements, compare, isValidKey) { 3177 from(elements, compare, isValidKey) {
3178 if (compare === void 0) 3178 if (compare === void 0)
3179 compare = null; 3179 compare = null;
3180 if (isValidKey === void 0) 3180 if (isValidKey === void 0)
3181 isValidKey = null; 3181 isValidKey = null;
3182 let result = new SplayTreeSet(compare, isValidKey); 3182 let result = new SplayTreeSet(compare, isValidKey);
3183 for (let element of elements) { 3183 for (let element of dart.as(elements, core.Iterable$(E))) {
3184 result.add(element); 3184 result.add(element);
3185 } 3185 }
3186 return result; 3186 return result;
3187 } 3187 }
3188 [_compare](e1, e2) { 3188 [_compare](e1, e2) {
3189 return dart.dinvokef(this[_comparator], e1, e2); 3189 return dart.dinvokef(this[_comparator], e1, e2);
3190 } 3190 }
3191 get iterator() { 3191 get iterator() {
3192 return new _SplayTreeKeyIterator(this); 3192 return new _SplayTreeKeyIterator(this);
3193 } 3193 }
(...skipping 1736 matching lines...) Expand 10 before | Expand all | Expand 10 after
4930 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable; 4930 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable;
4931 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$; 4931 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$;
4932 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator; 4932 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator;
4933 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$; 4933 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$;
4934 exports.HashSetIterator = HashSetIterator; 4934 exports.HashSetIterator = HashSetIterator;
4935 exports.HashSetIterator$ = HashSetIterator$; 4935 exports.HashSetIterator$ = HashSetIterator$;
4936 exports.LinkedHashSetCell = LinkedHashSetCell; 4936 exports.LinkedHashSetCell = LinkedHashSetCell;
4937 exports.LinkedHashSetIterator = LinkedHashSetIterator; 4937 exports.LinkedHashSetIterator = LinkedHashSetIterator;
4938 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$; 4938 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$;
4939 })(collection || (collection = {})); 4939 })(collection || (collection = {}));
OLDNEW
« no previous file with comments | « lib/runtime/dart/_js_names.js ('k') | lib/src/checker/checker.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698