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

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: 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
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 330 matching lines...) Expand 10 before | Expand all | Expand 10 after
341 } 341 }
342 return SetBase; 342 return SetBase;
343 }); 343 });
344 let SetBase = SetBase$(dart.dynamic); 344 let SetBase = SetBase$(dart.dynamic);
345 let _HashSetBase$ = dart.generic(function(E) { 345 let _HashSetBase$ = dart.generic(function(E) {
346 class _HashSetBase extends SetBase$(E) { 346 class _HashSetBase extends SetBase$(E) {
347 difference(other) { 347 difference(other) {
348 let result = this[_newSet](); 348 let result = this[_newSet]();
349 for (let element of this) { 349 for (let element of this) {
350 if (!dart.notNull(other.contains(element))) 350 if (!dart.notNull(other.contains(element)))
351 result.add(dart.as(element, E)); 351 result.add(element);
352 } 352 }
353 return result; 353 return result;
354 } 354 }
355 intersection(other) { 355 intersection(other) {
356 let result = this[_newSet](); 356 let result = this[_newSet]();
357 for (let element of this) { 357 for (let element of this) {
358 if (other.contains(element)) 358 if (other.contains(element))
359 result.add(dart.as(element, E)); 359 result.add(element);
360 } 360 }
361 return result; 361 return result;
362 } 362 }
363 toSet() { 363 toSet() {
364 return ((_) => { 364 return ((_) => {
365 _.addAll(this); 365 _.addAll(this);
366 return _; 366 return _;
367 }).bind(this)(this[_newSet]()); 367 }).bind(this)(this[_newSet]());
368 } 368 }
369 } 369 }
(...skipping 28 matching lines...) Expand all
398 equals = dart.closureWrap(_defaultEquals, "(E, E) → bool"); 398 equals = dart.closureWrap(_defaultEquals, "(E, E) → bool");
399 } 399 }
400 } 400 }
401 return new _CustomHashSet(equals, hashCode, isValidKey); 401 return new _CustomHashSet(equals, hashCode, isValidKey);
402 } 402 }
403 HashSet$identity() { 403 HashSet$identity() {
404 return new _IdentityHashSet(); 404 return new _IdentityHashSet();
405 } 405 }
406 HashSet$from(elements) { 406 HashSet$from(elements) {
407 let result = new HashSet(); 407 let result = new HashSet();
408 for (let e of elements) 408 for (let e of dart.as(elements, core.Iterable$(E)))
409 result.add(e); 409 result.add(e);
410 return result; 410 return result;
411 } 411 }
412 } 412 }
413 dart.defineNamedConstructor(HashSet, 'identity'); 413 dart.defineNamedConstructor(HashSet, 'identity');
414 dart.defineNamedConstructor(HashSet, 'from'); 414 dart.defineNamedConstructor(HashSet, 'from');
415 return HashSet; 415 return HashSet;
416 }); 416 });
417 let HashSet = HashSet$(dart.dynamic); 417 let HashSet = HashSet$(dart.dynamic);
418 let IterableMixin$ = dart.generic(function(E) { 418 let IterableMixin$ = dart.generic(function(E) {
(...skipping 1702 matching lines...) Expand 10 before | Expand all | Expand 10 after
2121 let DoubleLinkedQueue$ = dart.generic(function(E) { 2121 let DoubleLinkedQueue$ = dart.generic(function(E) {
2122 class DoubleLinkedQueue extends IterableBase$(E) { 2122 class DoubleLinkedQueue extends IterableBase$(E) {
2123 DoubleLinkedQueue() { 2123 DoubleLinkedQueue() {
2124 this[_sentinel] = null; 2124 this[_sentinel] = null;
2125 this[_elementCount] = 0; 2125 this[_elementCount] = 0;
2126 super.IterableBase(); 2126 super.IterableBase();
2127 this[_sentinel] = new _DoubleLinkedQueueEntrySentinel(); 2127 this[_sentinel] = new _DoubleLinkedQueueEntrySentinel();
2128 } 2128 }
2129 DoubleLinkedQueue$from(elements) { 2129 DoubleLinkedQueue$from(elements) {
2130 let list = dart.as(new DoubleLinkedQueue(), Queue$(E)); 2130 let list = dart.as(new DoubleLinkedQueue(), Queue$(E));
2131 for (let e of elements) { 2131 for (let e of dart.as(elements, core.Iterable$(E))) {
2132 list.addLast(e); 2132 list.addLast(e);
2133 } 2133 }
2134 return dart.as(list, DoubleLinkedQueue$(E)); 2134 return dart.as(list, DoubleLinkedQueue$(E));
2135 } 2135 }
2136 get length() { 2136 get length() {
2137 return this[_elementCount]; 2137 return this[_elementCount];
2138 } 2138 }
2139 addLast(value) { 2139 addLast(value) {
2140 this[_sentinel].prepend(value); 2140 this[_sentinel].prepend(value);
2141 this[_elementCount] = dart.notNull(this[_elementCount]) + 1; 2141 this[_elementCount] = dart.notNull(this[_elementCount]) + 1;
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
2302 let sourceList = elements; 2302 let sourceList = elements;
2303 queue[_table].setRange(0, length, dart.as(sourceList, core.Iterable$(E )), 0); 2303 queue[_table].setRange(0, length, dart.as(sourceList, core.Iterable$(E )), 0);
2304 queue[_tail] = length; 2304 queue[_tail] = length;
2305 return queue; 2305 return queue;
2306 } else { 2306 } else {
2307 let capacity = ListQueue[_INITIAL_CAPACITY]; 2307 let capacity = ListQueue[_INITIAL_CAPACITY];
2308 if (dart.is(elements, _internal.EfficientLength)) { 2308 if (dart.is(elements, _internal.EfficientLength)) {
2309 capacity = elements.length; 2309 capacity = elements.length;
2310 } 2310 }
2311 let result = new ListQueue(capacity); 2311 let result = new ListQueue(capacity);
2312 for (let element of elements) { 2312 for (let element of dart.as(elements, core.Iterable$(E))) {
2313 result.addLast(element); 2313 result.addLast(element);
2314 } 2314 }
2315 return result; 2315 return result;
2316 } 2316 }
2317 } 2317 }
2318 get iterator() { 2318 get iterator() {
2319 return new _ListQueueIterator(this); 2319 return new _ListQueueIterator(this);
2320 } 2320 }
2321 forEach(action) { 2321 forEach(action) {
2322 let modificationCount = this[_modificationCount]; 2322 let modificationCount = this[_modificationCount];
(...skipping 825 matching lines...) Expand 10 before | Expand all | Expand 10 after
3148 this[_comparator] = dart.as(compare === null ? core.Comparable.compare : compare, core.Comparator); 3148 this[_comparator] = dart.as(compare === null ? core.Comparable.compare : compare, core.Comparator);
3149 this[_validKey] = dart.as(isValidKey !== null ? isValidKey : (v) => dart .is(v, E), _Predicate); 3149 this[_validKey] = dart.as(isValidKey !== null ? isValidKey : (v) => dart .is(v, E), _Predicate);
3150 super._SplayTree(); 3150 super._SplayTree();
3151 } 3151 }
3152 SplayTreeSet$from(elements, compare, isValidKey) { 3152 SplayTreeSet$from(elements, compare, isValidKey) {
3153 if (compare === void 0) 3153 if (compare === void 0)
3154 compare = null; 3154 compare = null;
3155 if (isValidKey === void 0) 3155 if (isValidKey === void 0)
3156 isValidKey = null; 3156 isValidKey = null;
3157 let result = new SplayTreeSet(compare, isValidKey); 3157 let result = new SplayTreeSet(compare, isValidKey);
3158 for (let element of elements) { 3158 for (let element of dart.as(elements, core.Iterable$(E))) {
3159 result.add(element); 3159 result.add(element);
3160 } 3160 }
3161 return result; 3161 return result;
3162 } 3162 }
3163 [_compare](e1, e2) { 3163 [_compare](e1, e2) {
3164 return dart.dinvokef(this[_comparator], e1, e2); 3164 return dart.dinvokef(this[_comparator], e1, e2);
3165 } 3165 }
3166 get iterator() { 3166 get iterator() {
3167 return new _SplayTreeKeyIterator(this); 3167 return new _SplayTreeKeyIterator(this);
3168 } 3168 }
(...skipping 1726 matching lines...) Expand 10 before | Expand all | Expand 10 after
4895 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable; 4895 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable;
4896 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$; 4896 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$;
4897 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator; 4897 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator;
4898 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$; 4898 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$;
4899 exports.HashSetIterator = HashSetIterator; 4899 exports.HashSetIterator = HashSetIterator;
4900 exports.HashSetIterator$ = HashSetIterator$; 4900 exports.HashSetIterator$ = HashSetIterator$;
4901 exports.LinkedHashSetCell = LinkedHashSetCell; 4901 exports.LinkedHashSetCell = LinkedHashSetCell;
4902 exports.LinkedHashSetIterator = LinkedHashSetIterator; 4902 exports.LinkedHashSetIterator = LinkedHashSetIterator;
4903 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$; 4903 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$;
4904 })(collection || (collection = {})); 4904 })(collection || (collection = {}));
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698