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

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

Issue 1030063004: more care around generated names, fixes #60 #82 and #97 (Closed) Base URL: git@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 10 matching lines...) Expand all
21 // Function _defaultEquals: (dynamic, dynamic) → bool 21 // Function _defaultEquals: (dynamic, dynamic) → bool
22 function _defaultEquals(a, b) { 22 function _defaultEquals(a, b) {
23 return dart.equals(a, b); 23 return dart.equals(a, b);
24 } 24 }
25 // Function _defaultHashCode: (dynamic) → int 25 // Function _defaultHashCode: (dynamic) → int
26 function _defaultHashCode(a) { 26 function _defaultHashCode(a) {
27 return dart.as(dart.dload(a, 'hashCode'), core.int); 27 return dart.as(dart.dload(a, 'hashCode'), core.int);
28 } 28 }
29 let HashMap$ = dart.generic(function(K, V) { 29 let HashMap$ = dart.generic(function(K, V) {
30 class HashMap extends core.Object { 30 class HashMap extends core.Object {
31 HashMap(opt$) { 31 HashMap(opts) {
32 let equals = opt$ && 'equals' in opt$ ? opt$.equals : null; 32 let equals = opts && 'equals' in opts ? opts.equals : null;
33 let hashCode = opt$ && 'hashCode' in opt$ ? opt$.hashCode : null; 33 let hashCode = opts && 'hashCode' in opts ? opts.hashCode : null;
34 let isValidKey = opt$ && 'isValidKey' in opt$ ? opt$.isValidKey : null; 34 let isValidKey = opts && 'isValidKey' in opts ? opts.isValidKey : null;
35 if (isValidKey === null) { 35 if (isValidKey === null) {
36 if (hashCode === null) { 36 if (hashCode === null) {
37 if (equals === null) { 37 if (equals === null) {
38 return new _HashMap(); 38 return new _HashMap();
39 } 39 }
40 hashCode = dart.closureWrap(_defaultHashCode, "(K) → int"); 40 hashCode = dart.closureWrap(_defaultHashCode, "(K) → int");
41 } else { 41 } else {
42 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) { 42 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) {
43 return new _IdentityHashMap(); 43 return new _IdentityHashMap();
44 } 44 }
(...skipping 14 matching lines...) Expand all
59 HashMap$identity() { 59 HashMap$identity() {
60 return new _IdentityHashMap(); 60 return new _IdentityHashMap();
61 } 61 }
62 HashMap$from(other) { 62 HashMap$from(other) {
63 let result = new HashMap(); 63 let result = new HashMap();
64 other.forEach((k, v) => { 64 other.forEach((k, v) => {
65 result.set(k, dart.as(v, V)); 65 result.set(k, dart.as(v, V));
66 }); 66 });
67 return result; 67 return result;
68 } 68 }
69 HashMap$fromIterable(iterable, opt$) { 69 HashMap$fromIterable(iterable, opts) {
70 let key = opt$ && 'key' in opt$ ? opt$.key : null; 70 let key = opts && 'key' in opts ? opts.key : null;
71 let value = opt$ && 'value' in opt$ ? opt$.value : null; 71 let value = opts && 'value' in opts ? opts.value : null;
72 let map = new HashMap(); 72 let map = new HashMap();
73 Maps._fillMapWithMappedIterable(map, iterable, key, value); 73 Maps._fillMapWithMappedIterable(map, iterable, key, value);
74 return map; 74 return map;
75 } 75 }
76 HashMap$fromIterables(keys, values) { 76 HashMap$fromIterables(keys, values) {
77 let map = new HashMap(); 77 let map = new HashMap();
78 Maps._fillMapWithIterables(map, keys, values); 78 Maps._fillMapWithIterables(map, keys, values);
79 return map; 79 return map;
80 } 80 }
81 } 81 }
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 return result; 151 return result;
152 } 152 }
153 difference(other) { 153 difference(other) {
154 let result = this.toSet(); 154 let result = this.toSet();
155 for (let element of this) { 155 for (let element of this) {
156 if (other.contains(element)) 156 if (other.contains(element))
157 result.remove(element); 157 result.remove(element);
158 } 158 }
159 return result; 159 return result;
160 } 160 }
161 toList(opt$) { 161 toList(opts) {
162 let growable = opt$ && 'growable' in opt$ ? opt$.growable : true; 162 let growable = opts && 'growable' in opts ? opts.growable : true;
163 let result = growable ? ((_) => { 163 let result = growable ? ((_) => {
164 _.length = this.length; 164 _.length = this.length;
165 return _; 165 return _;
166 }).bind(this)(new core.List()) : new core.List(this.length); 166 }).bind(this)(new core.List()) : new core.List(this.length);
167 let i = 0; 167 let i = 0;
168 for (let element of this) 168 for (let element of this)
169 result.set((($tmp) => i = dart.notNull($tmp) + 1, $tmp)(i), element); 169 result.set(((x) => i = dart.notNull(x$) + 1, x$)(i), element);
170 return result; 170 return result;
171 } 171 }
172 map(f) { 172 map(f) {
173 return new _internal.EfficientLengthMappedIterable(this, f); 173 return new _internal.EfficientLengthMappedIterable(this, f);
174 } 174 }
175 get single() { 175 get single() {
176 if (dart.notNull(this.length) > 1) 176 if (dart.notNull(this.length) > 1)
177 throw _internal.IterableElementError.tooMany(); 177 throw _internal.IterableElementError.tooMany();
178 let it = this.iterator; 178 let it = this.iterator;
179 if (!dart.notNull(it.moveNext())) 179 if (!dart.notNull(it.moveNext()))
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 let it = this.iterator; 268 let it = this.iterator;
269 if (!dart.notNull(it.moveNext())) { 269 if (!dart.notNull(it.moveNext())) {
270 throw _internal.IterableElementError.noElement(); 270 throw _internal.IterableElementError.noElement();
271 } 271 }
272 let result = null; 272 let result = null;
273 do { 273 do {
274 result = dart.as(it.current, E); 274 result = dart.as(it.current, E);
275 } while (it.moveNext()); 275 } while (it.moveNext());
276 return result; 276 return result;
277 } 277 }
278 firstWhere(test, opt$) { 278 firstWhere(test, opts) {
279 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 279 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
280 for (let element of this) { 280 for (let element of this) {
281 if (test(element)) 281 if (test(element))
282 return element; 282 return element;
283 } 283 }
284 if (orElse !== null) 284 if (orElse !== null)
285 return orElse(); 285 return orElse();
286 throw _internal.IterableElementError.noElement(); 286 throw _internal.IterableElementError.noElement();
287 } 287 }
288 lastWhere(test, opt$) { 288 lastWhere(test, opts) {
289 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 289 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
290 let result = null; 290 let result = null;
291 let foundMatching = false; 291 let foundMatching = false;
292 for (let element of this) { 292 for (let element of this) {
293 if (test(element)) { 293 if (test(element)) {
294 result = element; 294 result = element;
295 foundMatching = true; 295 foundMatching = true;
296 } 296 }
297 } 297 }
298 if (foundMatching) 298 if (foundMatching)
299 return result; 299 return result;
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
365 _.addAll(this); 365 _.addAll(this);
366 return _; 366 return _;
367 }).bind(this)(this[_newSet]()); 367 }).bind(this)(this[_newSet]());
368 } 368 }
369 } 369 }
370 return _HashSetBase; 370 return _HashSetBase;
371 }); 371 });
372 let _HashSetBase = _HashSetBase$(dart.dynamic); 372 let _HashSetBase = _HashSetBase$(dart.dynamic);
373 let HashSet$ = dart.generic(function(E) { 373 let HashSet$ = dart.generic(function(E) {
374 class HashSet extends core.Object { 374 class HashSet extends core.Object {
375 HashSet(opt$) { 375 HashSet(opts) {
376 let equals = opt$ && 'equals' in opt$ ? opt$.equals : null; 376 let equals = opts && 'equals' in opts ? opts.equals : null;
377 let hashCode = opt$ && 'hashCode' in opt$ ? opt$.hashCode : null; 377 let hashCode = opts && 'hashCode' in opts ? opts.hashCode : null;
378 let isValidKey = opt$ && 'isValidKey' in opt$ ? opt$.isValidKey : null; 378 let isValidKey = opts && 'isValidKey' in opts ? opts.isValidKey : null;
379 if (isValidKey === null) { 379 if (isValidKey === null) {
380 if (hashCode === null) { 380 if (hashCode === null) {
381 if (equals === null) { 381 if (equals === null) {
382 return new _HashSet(); 382 return new _HashSet();
383 } 383 }
384 hashCode = dart.closureWrap(_defaultHashCode, "(E) → int"); 384 hashCode = dart.closureWrap(_defaultHashCode, "(E) → int");
385 } else { 385 } else {
386 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) { 386 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) {
387 return new _IdentityHashSet(); 387 return new _IdentityHashSet();
388 } 388 }
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
481 } 481 }
482 return buffer.toString(); 482 return buffer.toString();
483 } 483 }
484 any(f) { 484 any(f) {
485 for (let element of this) { 485 for (let element of this) {
486 if (f(element)) 486 if (f(element))
487 return true; 487 return true;
488 } 488 }
489 return false; 489 return false;
490 } 490 }
491 toList(opt$) { 491 toList(opts) {
492 let growable = opt$ && 'growable' in opt$ ? opt$.growable : true; 492 let growable = opts && 'growable' in opts ? opts.growable : true;
493 return new core.List.from(this, {growable: growable}); 493 return new core.List.from(this, {growable: growable});
494 } 494 }
495 toSet() { 495 toSet() {
496 return new core.Set.from(this); 496 return new core.Set.from(this);
497 } 497 }
498 get length() { 498 get length() {
499 dart.assert(!dart.is(this, _internal.EfficientLength)); 499 dart.assert(!dart.is(this, _internal.EfficientLength));
500 let count = 0; 500 let count = 0;
501 let it = this.iterator; 501 let it = this.iterator;
502 while (it.moveNext()) { 502 while (it.moveNext()) {
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
542 } 542 }
543 get single() { 543 get single() {
544 let it = this.iterator; 544 let it = this.iterator;
545 if (!dart.notNull(it.moveNext())) 545 if (!dart.notNull(it.moveNext()))
546 throw _internal.IterableElementError.noElement(); 546 throw _internal.IterableElementError.noElement();
547 let result = dart.as(it.current, E); 547 let result = dart.as(it.current, E);
548 if (it.moveNext()) 548 if (it.moveNext())
549 throw _internal.IterableElementError.tooMany(); 549 throw _internal.IterableElementError.tooMany();
550 return result; 550 return result;
551 } 551 }
552 firstWhere(test, opt$) { 552 firstWhere(test, opts) {
553 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 553 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
554 for (let element of this) { 554 for (let element of this) {
555 if (test(element)) 555 if (test(element))
556 return element; 556 return element;
557 } 557 }
558 if (orElse !== null) 558 if (orElse !== null)
559 return orElse(); 559 return orElse();
560 throw _internal.IterableElementError.noElement(); 560 throw _internal.IterableElementError.noElement();
561 } 561 }
562 lastWhere(test, opt$) { 562 lastWhere(test, opts) {
563 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 563 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
564 let result = null; 564 let result = null;
565 let foundMatching = false; 565 let foundMatching = false;
566 for (let element of this) { 566 for (let element of this) {
567 if (test(element)) { 567 if (test(element)) {
568 result = element; 568 result = element;
569 foundMatching = true; 569 foundMatching = true;
570 } 570 }
571 } 571 }
572 if (foundMatching) 572 if (foundMatching)
573 return result; 573 return result;
(...skipping 29 matching lines...) Expand all
603 } 603 }
604 throw new core.RangeError.index(index, this, "index", null, elementIndex ); 604 throw new core.RangeError.index(index, this, "index", null, elementIndex );
605 } 605 }
606 toString() { 606 toString() {
607 return IterableBase.iterableToShortString(this, '(', ')'); 607 return IterableBase.iterableToShortString(this, '(', ')');
608 } 608 }
609 } 609 }
610 return IterableMixin; 610 return IterableMixin;
611 }); 611 });
612 let IterableMixin = IterableMixin$(dart.dynamic); 612 let IterableMixin = IterableMixin$(dart.dynamic);
613 let _isToStringVisiting = Symbol('_isToStringVisiting'); 613 let _isToStringVisiting$ = Symbol('_isToStringVisiting');
614 let _iterablePartsToStrings = Symbol('_iterablePartsToStrings'); 614 let _iterablePartsToStrings$ = Symbol('_iterablePartsToStrings');
615 let IterableBase$ = dart.generic(function(E) { 615 let IterableBase$ = dart.generic(function(E) {
616 class IterableBase extends core.Object { 616 class IterableBase extends core.Object {
617 IterableBase() { 617 IterableBase() {
618 } 618 }
619 map(f) { 619 map(f) {
620 return new _internal.MappedIterable(this, f); 620 return new _internal.MappedIterable(this, f);
621 } 621 }
622 where(f) { 622 where(f) {
623 return new _internal.WhereIterable(this, f); 623 return new _internal.WhereIterable(this, f);
624 } 624 }
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
680 } 680 }
681 return buffer.toString(); 681 return buffer.toString();
682 } 682 }
683 any(f) { 683 any(f) {
684 for (let element of this) { 684 for (let element of this) {
685 if (f(element)) 685 if (f(element))
686 return true; 686 return true;
687 } 687 }
688 return false; 688 return false;
689 } 689 }
690 toList(opt$) { 690 toList(opts) {
691 let growable = opt$ && 'growable' in opt$ ? opt$.growable : true; 691 let growable = opts && 'growable' in opts ? opts.growable : true;
692 return new core.List.from(this, {growable: growable}); 692 return new core.List.from(this, {growable: growable});
693 } 693 }
694 toSet() { 694 toSet() {
695 return new core.Set.from(this); 695 return new core.Set.from(this);
696 } 696 }
697 get length() { 697 get length() {
698 dart.assert(!dart.is(this, _internal.EfficientLength)); 698 dart.assert(!dart.is(this, _internal.EfficientLength));
699 let count = 0; 699 let count = 0;
700 let it = this.iterator; 700 let it = this.iterator;
701 while (it.moveNext()) { 701 while (it.moveNext()) {
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
741 } 741 }
742 get single() { 742 get single() {
743 let it = this.iterator; 743 let it = this.iterator;
744 if (!dart.notNull(it.moveNext())) 744 if (!dart.notNull(it.moveNext()))
745 throw _internal.IterableElementError.noElement(); 745 throw _internal.IterableElementError.noElement();
746 let result = dart.as(it.current, E); 746 let result = dart.as(it.current, E);
747 if (it.moveNext()) 747 if (it.moveNext())
748 throw _internal.IterableElementError.tooMany(); 748 throw _internal.IterableElementError.tooMany();
749 return result; 749 return result;
750 } 750 }
751 firstWhere(test, opt$) { 751 firstWhere(test, opts) {
752 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 752 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
753 for (let element of this) { 753 for (let element of this) {
754 if (test(element)) 754 if (test(element))
755 return element; 755 return element;
756 } 756 }
757 if (orElse !== null) 757 if (orElse !== null)
758 return orElse(); 758 return orElse();
759 throw _internal.IterableElementError.noElement(); 759 throw _internal.IterableElementError.noElement();
760 } 760 }
761 lastWhere(test, opt$) { 761 lastWhere(test, opts) {
762 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 762 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
763 let result = null; 763 let result = null;
764 let foundMatching = false; 764 let foundMatching = false;
765 for (let element of this) { 765 for (let element of this) {
766 if (test(element)) { 766 if (test(element)) {
767 result = element; 767 result = element;
768 foundMatching = true; 768 foundMatching = true;
769 } 769 }
770 } 770 }
771 if (foundMatching) 771 if (foundMatching)
772 return result; 772 return result;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
842 _toStringVisiting.add(iterable); 842 _toStringVisiting.add(iterable);
843 try { 843 try {
844 buffer.writeAll(iterable, ", "); 844 buffer.writeAll(iterable, ", ");
845 } finally { 845 } finally {
846 dart.assert(core.identical(_toStringVisiting.last, iterable)); 846 dart.assert(core.identical(_toStringVisiting.last, iterable));
847 _toStringVisiting.removeLast(); 847 _toStringVisiting.removeLast();
848 } 848 }
849 buffer.write(rightDelimiter); 849 buffer.write(rightDelimiter);
850 return buffer.toString(); 850 return buffer.toString();
851 } 851 }
852 static [_isToStringVisiting](o) { 852 static [_isToStringVisiting$](o) {
853 for (let i = 0; dart.notNull(i) < dart.notNull(_toStringVisiting.length) ; i = dart.notNull(i) + 1) { 853 for (let i = 0; dart.notNull(i) < dart.notNull(_toStringVisiting.length) ; i = dart.notNull(i) + 1) {
854 if (core.identical(o, _toStringVisiting.get(i))) 854 if (core.identical(o, _toStringVisiting.get(i)))
855 return true; 855 return true;
856 } 856 }
857 return false; 857 return false;
858 } 858 }
859 static [_iterablePartsToStrings](iterable, parts) { 859 static [_iterablePartsToStrings$](iterable, parts) {
860 let LENGTH_LIMIT = 80; 860 let LENGTH_LIMIT = 80;
861 let HEAD_COUNT = 3; 861 let HEAD_COUNT = 3;
862 let TAIL_COUNT = 2; 862 let TAIL_COUNT = 2;
863 let MAX_COUNT = 100; 863 let MAX_COUNT = 100;
864 let OVERHEAD = 2; 864 let OVERHEAD = 2;
865 let ELLIPSIS_SIZE = 3; 865 let ELLIPSIS_SIZE = 3;
866 let length = 0; 866 let length = 0;
867 let count = 0; 867 let count = 0;
868 let it = iterable.iterator; 868 let it = iterable.iterator;
869 while (dart.notNull(length) < dart.notNull(LENGTH_LIMIT) || dart.notNull (count) < dart.notNull(HEAD_COUNT)) { 869 while (dart.notNull(length) < dart.notNull(LENGTH_LIMIT) || dart.notNull (count) < dart.notNull(HEAD_COUNT)) {
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
941 } 941 }
942 }); 942 });
943 return IterableBase; 943 return IterableBase;
944 }); 944 });
945 let IterableBase = IterableBase$(dart.dynamic); 945 let IterableBase = IterableBase$(dart.dynamic);
946 let _iterator = Symbol('_iterator'); 946 let _iterator = Symbol('_iterator');
947 let _state = Symbol('_state'); 947 let _state = Symbol('_state');
948 let _move = Symbol('_move'); 948 let _move = Symbol('_move');
949 let HasNextIterator$ = dart.generic(function(E) { 949 let HasNextIterator$ = dart.generic(function(E) {
950 class HasNextIterator extends core.Object { 950 class HasNextIterator extends core.Object {
951 HasNextIterator($_iterator) { 951 HasNextIterator(iterator$) {
952 this[_iterator] = $_iterator; 952 this[_iterator] = iterator$;
953 this[_state] = HasNextIterator._NOT_MOVED_YET; 953 this[_state] = HasNextIterator._NOT_MOVED_YET;
954 } 954 }
955 get hasNext() { 955 get hasNext() {
956 if (this[_state] === HasNextIterator._NOT_MOVED_YET) 956 if (this[_state] === HasNextIterator._NOT_MOVED_YET)
957 this[_move](); 957 this[_move]();
958 return this[_state] === HasNextIterator._HAS_NEXT_AND_NEXT_IN_CURRENT; 958 return this[_state] === HasNextIterator._HAS_NEXT_AND_NEXT_IN_CURRENT;
959 } 959 }
960 next() { 960 next() {
961 if (!dart.notNull(this.hasNext)) 961 if (!dart.notNull(this.hasNext))
962 throw new core.StateError("No more elements"); 962 throw new core.StateError("No more elements");
(...skipping 11 matching lines...) Expand all
974 } 974 }
975 } 975 }
976 HasNextIterator._HAS_NEXT_AND_NEXT_IN_CURRENT = 0; 976 HasNextIterator._HAS_NEXT_AND_NEXT_IN_CURRENT = 0;
977 HasNextIterator._NO_NEXT = 1; 977 HasNextIterator._NO_NEXT = 1;
978 HasNextIterator._NOT_MOVED_YET = 2; 978 HasNextIterator._NOT_MOVED_YET = 2;
979 return HasNextIterator; 979 return HasNextIterator;
980 }); 980 });
981 let HasNextIterator = HasNextIterator$(dart.dynamic); 981 let HasNextIterator = HasNextIterator$(dart.dynamic);
982 let LinkedHashMap$ = dart.generic(function(K, V) { 982 let LinkedHashMap$ = dart.generic(function(K, V) {
983 class LinkedHashMap extends core.Object { 983 class LinkedHashMap extends core.Object {
984 LinkedHashMap(opt$) { 984 LinkedHashMap(opts) {
985 let equals = opt$ && 'equals' in opt$ ? opt$.equals : null; 985 let equals = opts && 'equals' in opts ? opts.equals : null;
986 let hashCode = opt$ && 'hashCode' in opt$ ? opt$.hashCode : null; 986 let hashCode = opts && 'hashCode' in opts ? opts.hashCode : null;
987 let isValidKey = opt$ && 'isValidKey' in opt$ ? opt$.isValidKey : null; 987 let isValidKey = opts && 'isValidKey' in opts ? opts.isValidKey : null;
988 if (isValidKey === null) { 988 if (isValidKey === null) {
989 if (hashCode === null) { 989 if (hashCode === null) {
990 if (equals === null) { 990 if (equals === null) {
991 return new _LinkedHashMap(); 991 return new _LinkedHashMap();
992 } 992 }
993 hashCode = dart.closureWrap(_defaultHashCode, "(K) → int"); 993 hashCode = dart.closureWrap(_defaultHashCode, "(K) → int");
994 } else { 994 } else {
995 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) { 995 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) {
996 return new _LinkedIdentityHashMap(); 996 return new _LinkedIdentityHashMap();
997 } 997 }
(...skipping 14 matching lines...) Expand all
1012 LinkedHashMap$identity() { 1012 LinkedHashMap$identity() {
1013 return new _LinkedIdentityHashMap(); 1013 return new _LinkedIdentityHashMap();
1014 } 1014 }
1015 LinkedHashMap$from(other) { 1015 LinkedHashMap$from(other) {
1016 let result = new LinkedHashMap(); 1016 let result = new LinkedHashMap();
1017 other.forEach((k, v) => { 1017 other.forEach((k, v) => {
1018 result.set(k, dart.as(v, V)); 1018 result.set(k, dart.as(v, V));
1019 }); 1019 });
1020 return result; 1020 return result;
1021 } 1021 }
1022 LinkedHashMap$fromIterable(iterable, opt$) { 1022 LinkedHashMap$fromIterable(iterable, opts) {
1023 let key = opt$ && 'key' in opt$ ? opt$.key : null; 1023 let key = opts && 'key' in opts ? opts.key : null;
1024 let value = opt$ && 'value' in opt$ ? opt$.value : null; 1024 let value = opts && 'value' in opts ? opts.value : null;
1025 let map = new LinkedHashMap(); 1025 let map = new LinkedHashMap();
1026 Maps._fillMapWithMappedIterable(map, iterable, key, value); 1026 Maps._fillMapWithMappedIterable(map, iterable, key, value);
1027 return map; 1027 return map;
1028 } 1028 }
1029 LinkedHashMap$fromIterables(keys, values) { 1029 LinkedHashMap$fromIterables(keys, values) {
1030 let map = new LinkedHashMap(); 1030 let map = new LinkedHashMap();
1031 Maps._fillMapWithIterables(map, keys, values); 1031 Maps._fillMapWithIterables(map, keys, values);
1032 return map; 1032 return map;
1033 } 1033 }
1034 LinkedHashMap$_literal(keyValuePairs) { 1034 LinkedHashMap$_literal(keyValuePairs) {
1035 return dart.as(_js_helper.fillLiteralMap(keyValuePairs, new _LinkedHashM ap()), LinkedHashMap$(K, V)); 1035 return dart.as(_js_helper.fillLiteralMap(keyValuePairs, new _LinkedHashM ap()), LinkedHashMap$(K, V));
1036 } 1036 }
1037 LinkedHashMap$_empty() { 1037 LinkedHashMap$_empty() {
1038 return new _LinkedHashMap(); 1038 return new _LinkedHashMap();
1039 } 1039 }
1040 } 1040 }
1041 dart.defineNamedConstructor(LinkedHashMap, 'identity'); 1041 dart.defineNamedConstructor(LinkedHashMap, 'identity');
1042 dart.defineNamedConstructor(LinkedHashMap, 'from'); 1042 dart.defineNamedConstructor(LinkedHashMap, 'from');
1043 dart.defineNamedConstructor(LinkedHashMap, 'fromIterable'); 1043 dart.defineNamedConstructor(LinkedHashMap, 'fromIterable');
1044 dart.defineNamedConstructor(LinkedHashMap, 'fromIterables'); 1044 dart.defineNamedConstructor(LinkedHashMap, 'fromIterables');
1045 dart.defineNamedConstructor(LinkedHashMap, '_literal'); 1045 dart.defineNamedConstructor(LinkedHashMap, '_literal');
1046 dart.defineNamedConstructor(LinkedHashMap, '_empty'); 1046 dart.defineNamedConstructor(LinkedHashMap, '_empty');
1047 return LinkedHashMap; 1047 return LinkedHashMap;
1048 }); 1048 });
1049 let LinkedHashMap = LinkedHashMap$(dart.dynamic, dart.dynamic); 1049 let LinkedHashMap = LinkedHashMap$(dart.dynamic, dart.dynamic);
1050 let LinkedHashSet$ = dart.generic(function(E) { 1050 let LinkedHashSet$ = dart.generic(function(E) {
1051 class LinkedHashSet extends core.Object { 1051 class LinkedHashSet extends core.Object {
1052 LinkedHashSet(opt$) { 1052 LinkedHashSet(opts) {
1053 let equals = opt$ && 'equals' in opt$ ? opt$.equals : null; 1053 let equals = opts && 'equals' in opts ? opts.equals : null;
1054 let hashCode = opt$ && 'hashCode' in opt$ ? opt$.hashCode : null; 1054 let hashCode = opts && 'hashCode' in opts ? opts.hashCode : null;
1055 let isValidKey = opt$ && 'isValidKey' in opt$ ? opt$.isValidKey : null; 1055 let isValidKey = opts && 'isValidKey' in opts ? opts.isValidKey : null;
1056 if (isValidKey === null) { 1056 if (isValidKey === null) {
1057 if (hashCode === null) { 1057 if (hashCode === null) {
1058 if (equals === null) { 1058 if (equals === null) {
1059 return new _LinkedHashSet(); 1059 return new _LinkedHashSet();
1060 } 1060 }
1061 hashCode = dart.closureWrap(_defaultHashCode, "(E) → int"); 1061 hashCode = dart.closureWrap(_defaultHashCode, "(E) → int");
1062 } else { 1062 } else {
1063 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) { 1063 if (dart.notNull(core.identical(core.identityHashCode, hashCode)) && dart.notNull(core.identical(core.identical, equals))) {
1064 return new _LinkedIdentityHashSet(); 1064 return new _LinkedIdentityHashSet();
1065 } 1065 }
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after
1263 insertAfter(entry) { 1263 insertAfter(entry) {
1264 this[_list]._insertAfter(this, entry); 1264 this[_list]._insertAfter(this, entry);
1265 } 1265 }
1266 insertBefore(entry) { 1266 insertBefore(entry) {
1267 this[_list]._insertAfter(this[_previous], entry); 1267 this[_list]._insertAfter(this[_previous], entry);
1268 } 1268 }
1269 } 1269 }
1270 return LinkedListEntry; 1270 return LinkedListEntry;
1271 }); 1271 });
1272 let LinkedListEntry = LinkedListEntry$(dart.dynamic); 1272 let LinkedListEntry = LinkedListEntry$(dart.dynamic);
1273 let _filter = Symbol('_filter'); 1273 let _filter$ = Symbol('_filter');
1274 let ListMixin$ = dart.generic(function(E) { 1274 let ListMixin$ = dart.generic(function(E) {
1275 class ListMixin extends core.Object { 1275 class ListMixin extends core.Object {
1276 get iterator() { 1276 get iterator() {
1277 return new _internal.ListIterator(this); 1277 return new _internal.ListIterator(this);
1278 } 1278 }
1279 elementAt(index) { 1279 elementAt(index) {
1280 return this.get(index); 1280 return this.get(index);
1281 } 1281 }
1282 forEach(action) { 1282 forEach(action) {
1283 let length = this.length; 1283 let length = this.length;
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
1337 let length = this.length; 1337 let length = this.length;
1338 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 1338 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
1339 if (test(this.get(i))) 1339 if (test(this.get(i)))
1340 return true; 1340 return true;
1341 if (length !== this.length) { 1341 if (length !== this.length) {
1342 throw new core.ConcurrentModificationError(this); 1342 throw new core.ConcurrentModificationError(this);
1343 } 1343 }
1344 } 1344 }
1345 return false; 1345 return false;
1346 } 1346 }
1347 firstWhere(test, opt$) { 1347 firstWhere(test, opts) {
1348 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 1348 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
1349 let length = this.length; 1349 let length = this.length;
1350 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 1350 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
1351 let element = this.get(i); 1351 let element = this.get(i);
1352 if (test(element)) 1352 if (test(element))
1353 return element; 1353 return element;
1354 if (length !== this.length) { 1354 if (length !== this.length) {
1355 throw new core.ConcurrentModificationError(this); 1355 throw new core.ConcurrentModificationError(this);
1356 } 1356 }
1357 } 1357 }
1358 if (orElse !== null) 1358 if (orElse !== null)
1359 return orElse(); 1359 return orElse();
1360 throw _internal.IterableElementError.noElement(); 1360 throw _internal.IterableElementError.noElement();
1361 } 1361 }
1362 lastWhere(test, opt$) { 1362 lastWhere(test, opts) {
1363 let orElse = opt$ && 'orElse' in opt$ ? opt$.orElse : null; 1363 let orElse = opts && 'orElse' in opts ? opts.orElse : null;
1364 let length = this.length; 1364 let length = this.length;
1365 for (let i = dart.notNull(length) - 1; dart.notNull(i) >= 0; i = dart.no tNull(i) - 1) { 1365 for (let i = dart.notNull(length) - 1; dart.notNull(i) >= 0; i = dart.no tNull(i) - 1) {
1366 let element = this.get(i); 1366 let element = this.get(i);
1367 if (test(element)) 1367 if (test(element))
1368 return element; 1368 return element;
1369 if (length !== this.length) { 1369 if (length !== this.length) {
1370 throw new core.ConcurrentModificationError(this); 1370 throw new core.ConcurrentModificationError(this);
1371 } 1371 }
1372 } 1372 }
1373 if (orElse !== null) 1373 if (orElse !== null)
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
1442 } 1442 }
1443 skipWhile(test) { 1443 skipWhile(test) {
1444 return new _internal.SkipWhileIterable(this, test); 1444 return new _internal.SkipWhileIterable(this, test);
1445 } 1445 }
1446 take(count) { 1446 take(count) {
1447 return new _internal.SubListIterable(this, 0, count); 1447 return new _internal.SubListIterable(this, 0, count);
1448 } 1448 }
1449 takeWhile(test) { 1449 takeWhile(test) {
1450 return new _internal.TakeWhileIterable(this, test); 1450 return new _internal.TakeWhileIterable(this, test);
1451 } 1451 }
1452 toList(opt$) { 1452 toList(opts) {
1453 let growable = opt$ && 'growable' in opt$ ? opt$.growable : true; 1453 let growable = opts && 'growable' in opts ? opts.growable : true;
1454 let result = null; 1454 let result = null;
1455 if (growable) { 1455 if (growable) {
1456 result = ((_) => { 1456 result = ((_) => {
1457 _.length = this.length; 1457 _.length = this.length;
1458 return _; 1458 return _;
1459 }).bind(this)(new core.List()); 1459 }).bind(this)(new core.List());
1460 } else { 1460 } else {
1461 result = new core.List(this.length); 1461 result = new core.List(this.length);
1462 } 1462 }
1463 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) { 1463 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
1464 result.set(i, this.get(i)); 1464 result.set(i, this.get(i));
1465 } 1465 }
1466 return result; 1466 return result;
1467 } 1467 }
1468 toSet() { 1468 toSet() {
1469 let result = new core.Set(); 1469 let result = new core.Set();
1470 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) { 1470 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
1471 result.add(this.get(i)); 1471 result.add(this.get(i));
1472 } 1472 }
1473 return result; 1473 return result;
1474 } 1474 }
1475 add(element) { 1475 add(element) {
1476 this.set((($tmp) => this.length = dart.notNull($tmp) + 1, $tmp).bind(thi s)(this.length), element); 1476 this.set(((x) => this.length = dart.notNull(x$) + 1, x$).bind(this)(this .length), element);
1477 } 1477 }
1478 addAll(iterable) { 1478 addAll(iterable) {
1479 for (let element of iterable) { 1479 for (let element of iterable) {
1480 this.set((($tmp) => this.length = dart.notNull($tmp) + 1, $tmp).bind(t his)(this.length), element); 1480 this.set(((x) => this.length = dart.notNull(x$) + 1, x$).bind(this)(th is.length), element);
1481 } 1481 }
1482 } 1482 }
1483 remove(element) { 1483 remove(element) {
1484 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) { 1484 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
1485 if (dart.equals(this.get(i), element)) { 1485 if (dart.equals(this.get(i), element)) {
1486 this.setRange(i, dart.notNull(this.length) - 1, this, dart.notNull(i ) + 1); 1486 this.setRange(i, dart.notNull(this.length) - 1, this, dart.notNull(i ) + 1);
1487 this.length = 1; 1487 this.length = 1;
1488 return true; 1488 return true;
1489 } 1489 }
1490 } 1490 }
1491 return false; 1491 return false;
1492 } 1492 }
1493 removeWhere(test) { 1493 removeWhere(test) {
1494 _filter(this, test, false); 1494 _filter(this, test, false);
1495 } 1495 }
1496 retainWhere(test) { 1496 retainWhere(test) {
1497 _filter(this, test, true); 1497 _filter(this, test, true);
1498 } 1498 }
1499 static [_filter](source, test, retainMatching) { 1499 static [_filter$](source, test, retainMatching) {
1500 let retained = new List.from([]); 1500 let retained = new List.from([]);
1501 let length = source.length; 1501 let length = source.length;
1502 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 1502 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
1503 let element = source.get(i); 1503 let element = source.get(i);
1504 if (dart.dinvokef(test, element) === retainMatching) { 1504 if (dart.dinvokef(test, element) === retainMatching) {
1505 retained.add(element); 1505 retained.add(element);
1506 } 1506 }
1507 if (length !== source.length) { 1507 if (length !== source.length) {
1508 throw new core.ConcurrentModificationError(source); 1508 throw new core.ConcurrentModificationError(source);
1509 } 1509 }
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
1700 let insertionLength = iterable.length; 1700 let insertionLength = iterable.length;
1701 this.length = insertionLength; 1701 this.length = insertionLength;
1702 this.setRange(dart.notNull(index) + dart.notNull(insertionLength), this. length, this, index); 1702 this.setRange(dart.notNull(index) + dart.notNull(insertionLength), this. length, this, index);
1703 this.setAll(index, iterable); 1703 this.setAll(index, iterable);
1704 } 1704 }
1705 setAll(index, iterable) { 1705 setAll(index, iterable) {
1706 if (dart.is(iterable, core.List)) { 1706 if (dart.is(iterable, core.List)) {
1707 this.setRange(index, dart.notNull(index) + dart.notNull(iterable.lengt h), iterable); 1707 this.setRange(index, dart.notNull(index) + dart.notNull(iterable.lengt h), iterable);
1708 } else { 1708 } else {
1709 for (let element of iterable) { 1709 for (let element of iterable) {
1710 this.set((($tmp) => index = dart.notNull($tmp) + 1, $tmp)(index), el ement); 1710 this.set(((x) => index = dart.notNull(x$) + 1, x$)(index), element);
1711 } 1711 }
1712 } 1712 }
1713 } 1713 }
1714 get reversed() { 1714 get reversed() {
1715 return new _internal.ReversedListIterable(this); 1715 return new _internal.ReversedListIterable(this);
1716 } 1716 }
1717 toString() { 1717 toString() {
1718 return IterableBase.iterableToFullString(this, '[', ']'); 1718 return IterableBase.iterableToFullString(this, '[', ']');
1719 } 1719 }
1720 } 1720 }
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
1806 let _UnmodifiableMapMixin = _UnmodifiableMapMixin$(dart.dynamic, dart.dynamic) ; 1806 let _UnmodifiableMapMixin = _UnmodifiableMapMixin$(dart.dynamic, dart.dynamic) ;
1807 let UnmodifiableMapBase$ = dart.generic(function(K, V) { 1807 let UnmodifiableMapBase$ = dart.generic(function(K, V) {
1808 class UnmodifiableMapBase extends dart.mixin(_UnmodifiableMapMixin$(K, V)) { 1808 class UnmodifiableMapBase extends dart.mixin(_UnmodifiableMapMixin$(K, V)) {
1809 } 1809 }
1810 return UnmodifiableMapBase; 1810 return UnmodifiableMapBase;
1811 }); 1811 });
1812 let UnmodifiableMapBase = UnmodifiableMapBase$(dart.dynamic, dart.dynamic); 1812 let UnmodifiableMapBase = UnmodifiableMapBase$(dart.dynamic, dart.dynamic);
1813 let _map = Symbol('_map'); 1813 let _map = Symbol('_map');
1814 let _MapBaseValueIterable$ = dart.generic(function(V) { 1814 let _MapBaseValueIterable$ = dart.generic(function(V) {
1815 class _MapBaseValueIterable extends IterableBase$(V) { 1815 class _MapBaseValueIterable extends IterableBase$(V) {
1816 _MapBaseValueIterable($_map) { 1816 _MapBaseValueIterable(map$) {
1817 this[_map] = $_map; 1817 this[_map] = map$;
1818 super.IterableBase(); 1818 super.IterableBase();
1819 } 1819 }
1820 get length() { 1820 get length() {
1821 return this[_map].length; 1821 return this[_map].length;
1822 } 1822 }
1823 get isEmpty() { 1823 get isEmpty() {
1824 return this[_map].isEmpty; 1824 return this[_map].isEmpty;
1825 } 1825 }
1826 get isNotEmpty() { 1826 get isNotEmpty() {
1827 return this[_map].isNotEmpty; 1827 return this[_map].isNotEmpty;
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
1918 } 1918 }
1919 return MapView; 1919 return MapView;
1920 }); 1920 });
1921 let MapView = MapView$(dart.dynamic, dart.dynamic); 1921 let MapView = MapView$(dart.dynamic, dart.dynamic);
1922 let UnmodifiableMapView$ = dart.generic(function(K, V) { 1922 let UnmodifiableMapView$ = dart.generic(function(K, V) {
1923 class UnmodifiableMapView extends dart.mixin(_UnmodifiableMapMixin$(K, V)) { 1923 class UnmodifiableMapView extends dart.mixin(_UnmodifiableMapMixin$(K, V)) {
1924 } 1924 }
1925 return UnmodifiableMapView; 1925 return UnmodifiableMapView;
1926 }); 1926 });
1927 let UnmodifiableMapView = UnmodifiableMapView$(dart.dynamic, dart.dynamic); 1927 let UnmodifiableMapView = UnmodifiableMapView$(dart.dynamic, dart.dynamic);
1928 let _toStringVisiting = Symbol('_toStringVisiting'); 1928 let _toStringVisiting$ = Symbol('_toStringVisiting');
1929 let _id = Symbol('_id'); 1929 let _id$ = Symbol('_id');
1930 let _fillMapWithMappedIterable = Symbol('_fillMapWithMappedIterable'); 1930 let _fillMapWithMappedIterable = Symbol('_fillMapWithMappedIterable');
1931 let _fillMapWithIterables = Symbol('_fillMapWithIterables'); 1931 let _fillMapWithIterables = Symbol('_fillMapWithIterables');
1932 class Maps extends core.Object { 1932 class Maps extends core.Object {
1933 static containsValue(map, value) { 1933 static containsValue(map, value) {
1934 for (let v of map.values) { 1934 for (let v of map.values) {
1935 if (dart.equals(value, v)) { 1935 if (dart.equals(value, v)) {
1936 return true; 1936 return true;
1937 } 1937 }
1938 } 1938 }
1939 return false; 1939 return false;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
1975 } 1975 }
1976 static isNotEmpty(map) { 1976 static isNotEmpty(map) {
1977 return map.keys.isNotEmpty; 1977 return map.keys.isNotEmpty;
1978 } 1978 }
1979 static mapToString(m) { 1979 static mapToString(m) {
1980 if (IterableBase._isToStringVisiting(m)) { 1980 if (IterableBase._isToStringVisiting(m)) {
1981 return '{...}'; 1981 return '{...}';
1982 } 1982 }
1983 let result = new core.StringBuffer(); 1983 let result = new core.StringBuffer();
1984 try { 1984 try {
1985 IterableBase[_toStringVisiting].add(m); 1985 IterableBase[_toStringVisiting$].add(m);
1986 result.write('{'); 1986 result.write('{');
1987 let first = true; 1987 let first = true;
1988 m.forEach(((k, v) => { 1988 m.forEach(((k, v) => {
1989 if (!dart.notNull(first)) { 1989 if (!dart.notNull(first)) {
1990 result.write(', '); 1990 result.write(', ');
1991 } 1991 }
1992 first = false; 1992 first = false;
1993 result.write(k); 1993 result.write(k);
1994 result.write(': '); 1994 result.write(': ');
1995 result.write(v); 1995 result.write(v);
1996 }).bind(this)); 1996 }).bind(this));
1997 result.write('}'); 1997 result.write('}');
1998 } finally { 1998 } finally {
1999 dart.assert(core.identical(IterableBase[_toStringVisiting].last, m)); 1999 dart.assert(core.identical(IterableBase[_toStringVisiting$].last, m));
2000 IterableBase[_toStringVisiting].removeLast(); 2000 IterableBase[_toStringVisiting$].removeLast();
2001 } 2001 }
2002 return result.toString(); 2002 return result.toString();
2003 } 2003 }
2004 static [_id](x) { 2004 static [_id$](x) {
2005 return x; 2005 return x;
2006 } 2006 }
2007 static [_fillMapWithMappedIterable](map, iterable, key, value) { 2007 static [_fillMapWithMappedIterable](map, iterable, key, value) {
2008 if (key === null) 2008 if (key === null)
2009 key = _id; 2009 key = _id;
2010 if (value === null) 2010 if (value === null)
2011 value = _id; 2011 value = _id;
2012 for (let element of iterable) { 2012 for (let element of iterable) {
2013 map.set(dart.dinvokef(key, element), dart.dinvokef(value, element)); 2013 map.set(dart.dinvokef(key, element), dart.dinvokef(value, element));
2014 } 2014 }
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
2164 while (!dart.notNull(core.identical(entry, this[_sentinel]))) { 2164 while (!dart.notNull(core.identical(entry, this[_sentinel]))) {
2165 if (dart.equals(entry.element, o)) { 2165 if (dart.equals(entry.element, o)) {
2166 entry.remove(); 2166 entry.remove();
2167 this[_elementCount] = dart.notNull(this[_elementCount]) - 1; 2167 this[_elementCount] = dart.notNull(this[_elementCount]) - 1;
2168 return true; 2168 return true;
2169 } 2169 }
2170 entry = entry[_next]; 2170 entry = entry[_next];
2171 } 2171 }
2172 return false; 2172 return false;
2173 } 2173 }
2174 [_filter](test, removeMatching) { 2174 [_filter$](test, removeMatching) {
2175 let entry = this[_sentinel][_next]; 2175 let entry = this[_sentinel][_next];
2176 while (!dart.notNull(core.identical(entry, this[_sentinel]))) { 2176 while (!dart.notNull(core.identical(entry, this[_sentinel]))) {
2177 let next = entry[_next]; 2177 let next = entry[_next];
2178 if (core.identical(removeMatching, test(entry.element))) { 2178 if (core.identical(removeMatching, test(entry.element))) {
2179 entry.remove(); 2179 entry.remove();
2180 this[_elementCount] = dart.notNull(this[_elementCount]) - 1; 2180 this[_elementCount] = dart.notNull(this[_elementCount]) - 1;
2181 } 2181 }
2182 entry = next; 2182 entry = next;
2183 } 2183 }
2184 } 2184 }
2185 removeWhere(test) { 2185 removeWhere(test) {
2186 this[_filter](test, true); 2186 this[_filter$](test, true);
2187 } 2187 }
2188 retainWhere(test) { 2188 retainWhere(test) {
2189 this[_filter](test, false); 2189 this[_filter$](test, false);
2190 } 2190 }
2191 get first() { 2191 get first() {
2192 return this[_sentinel][_next].element; 2192 return this[_sentinel][_next].element;
2193 } 2193 }
2194 get last() { 2194 get last() {
2195 return this[_sentinel][_previous].element; 2195 return this[_sentinel][_previous].element;
2196 } 2196 }
2197 get single() { 2197 get single() {
2198 if (core.identical(this[_sentinel][_next], this[_sentinel][_previous])) { 2198 if (core.identical(this[_sentinel][_next], this[_sentinel][_previous])) {
2199 return this[_sentinel][_next].element; 2199 return this[_sentinel][_next].element;
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
2261 let _head = Symbol('_head'); 2261 let _head = Symbol('_head');
2262 let _tail = Symbol('_tail'); 2262 let _tail = Symbol('_tail');
2263 let _table = Symbol('_table'); 2263 let _table = Symbol('_table');
2264 let _checkModification = Symbol('_checkModification'); 2264 let _checkModification = Symbol('_checkModification');
2265 let _writeToList = Symbol('_writeToList'); 2265 let _writeToList = Symbol('_writeToList');
2266 let _add = Symbol('_add'); 2266 let _add = Symbol('_add');
2267 let _preGrow = Symbol('_preGrow'); 2267 let _preGrow = Symbol('_preGrow');
2268 let _remove = Symbol('_remove'); 2268 let _remove = Symbol('_remove');
2269 let _filterWhere = Symbol('_filterWhere'); 2269 let _filterWhere = Symbol('_filterWhere');
2270 let _grow = Symbol('_grow'); 2270 let _grow = Symbol('_grow');
2271 let _isPowerOf2 = Symbol('_isPowerOf2'); 2271 let _isPowerOf2$ = Symbol('_isPowerOf2');
2272 let _nextPowerOf2 = Symbol('_nextPowerOf2'); 2272 let _nextPowerOf2$ = Symbol('_nextPowerOf2');
2273 let ListQueue$ = dart.generic(function(E) { 2273 let ListQueue$ = dart.generic(function(E) {
2274 class ListQueue extends IterableBase$(E) { 2274 class ListQueue extends IterableBase$(E) {
2275 ListQueue(initialCapacity) { 2275 ListQueue(initialCapacity) {
2276 if (initialCapacity === void 0) 2276 if (initialCapacity === void 0)
2277 initialCapacity = null; 2277 initialCapacity = null;
2278 this[_head] = 0; 2278 this[_head] = 0;
2279 this[_tail] = 0; 2279 this[_tail] = 0;
2280 this[_table] = null; 2280 this[_table] = null;
2281 this[_modificationCount] = 0; 2281 this[_modificationCount] = 0;
2282 super.IterableBase(); 2282 super.IterableBase();
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
2339 if (this[_head] === this[_tail]) 2339 if (this[_head] === this[_tail])
2340 throw _internal.IterableElementError.noElement(); 2340 throw _internal.IterableElementError.noElement();
2341 if (dart.notNull(this.length) > 1) 2341 if (dart.notNull(this.length) > 1)
2342 throw _internal.IterableElementError.tooMany(); 2342 throw _internal.IterableElementError.tooMany();
2343 return this[_table].get(this[_head]); 2343 return this[_table].get(this[_head]);
2344 } 2344 }
2345 elementAt(index) { 2345 elementAt(index) {
2346 core.RangeError.checkValidIndex(index, this); 2346 core.RangeError.checkValidIndex(index, this);
2347 return this[_table].get(dart.notNull(this[_head]) + dart.notNull(index) & dart.notNull(this[_table].length) - 1); 2347 return this[_table].get(dart.notNull(this[_head]) + dart.notNull(index) & dart.notNull(this[_table].length) - 1);
2348 } 2348 }
2349 toList(opt$) { 2349 toList(opts) {
2350 let growable = opt$ && 'growable' in opt$ ? opt$.growable : true; 2350 let growable = opts && 'growable' in opts ? opts.growable : true;
2351 let list = null; 2351 let list = null;
2352 if (growable) { 2352 if (growable) {
2353 list = ((_) => { 2353 list = ((_) => {
2354 _.length = this.length; 2354 _.length = this.length;
2355 return _; 2355 return _;
2356 }).bind(this)(new core.List()); 2356 }).bind(this)(new core.List());
2357 } else { 2357 } else {
2358 list = new core.List(this.length); 2358 list = new core.List(this.length);
2359 } 2359 }
2360 this[_writeToList](list); 2360 this[_writeToList](list);
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
2456 } 2456 }
2457 removeLast() { 2457 removeLast() {
2458 if (this[_head] === this[_tail]) 2458 if (this[_head] === this[_tail])
2459 throw _internal.IterableElementError.noElement(); 2459 throw _internal.IterableElementError.noElement();
2460 this[_modificationCount] = dart.notNull(this[_modificationCount]) + 1; 2460 this[_modificationCount] = dart.notNull(this[_modificationCount]) + 1;
2461 this[_tail] = dart.notNull(this[_tail]) - 1 & dart.notNull(this[_table]. length) - 1; 2461 this[_tail] = dart.notNull(this[_tail]) - 1 & dart.notNull(this[_table]. length) - 1;
2462 let result = this[_table].get(this[_tail]); 2462 let result = this[_table].get(this[_tail]);
2463 this[_table].set(this[_tail], null); 2463 this[_table].set(this[_tail], null);
2464 return result; 2464 return result;
2465 } 2465 }
2466 static [_isPowerOf2](number) { 2466 static [_isPowerOf2$](number) {
2467 return (dart.notNull(number) & dart.notNull(number) - 1) === 0; 2467 return (dart.notNull(number) & dart.notNull(number) - 1) === 0;
2468 } 2468 }
2469 static [_nextPowerOf2](number) { 2469 static [_nextPowerOf2$](number) {
2470 dart.assert(dart.notNull(number) > 0); 2470 dart.assert(dart.notNull(number) > 0);
2471 number = (dart.notNull(number) << 1) - 1; 2471 number = (dart.notNull(number) << 1) - 1;
2472 for (;;) { 2472 for (;;) {
2473 let nextNumber = dart.notNull(number) & dart.notNull(number) - 1; 2473 let nextNumber = dart.notNull(number) & dart.notNull(number) - 1;
2474 if (nextNumber === 0) 2474 if (nextNumber === 0)
2475 return number; 2475 return number;
2476 number = nextNumber; 2476 number = nextNumber;
2477 } 2477 }
2478 } 2478 }
2479 [_checkModification](expectedModificationCount) { 2479 [_checkModification](expectedModificationCount) {
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after
2778 if (compare === void 0) 2778 if (compare === void 0)
2779 compare = null; 2779 compare = null;
2780 if (isValidKey === void 0) 2780 if (isValidKey === void 0)
2781 isValidKey = null; 2781 isValidKey = null;
2782 let result = new SplayTreeMap(); 2782 let result = new SplayTreeMap();
2783 other.forEach((k, v) => { 2783 other.forEach((k, v) => {
2784 result.set(k, dart.as(v, V)); 2784 result.set(k, dart.as(v, V));
2785 }); 2785 });
2786 return result; 2786 return result;
2787 } 2787 }
2788 SplayTreeMap$fromIterable(iterable, opt$) { 2788 SplayTreeMap$fromIterable(iterable, opts) {
2789 let key = opt$ && 'key' in opt$ ? opt$.key : null; 2789 let key = opts && 'key' in opts ? opts.key : null;
2790 let value = opt$ && 'value' in opt$ ? opt$.value : null; 2790 let value = opts && 'value' in opts ? opts.value : null;
2791 let compare = opt$ && 'compare' in opt$ ? opt$.compare : null; 2791 let compare = opts && 'compare' in opts ? opts.compare : null;
2792 let isValidKey = opt$ && 'isValidKey' in opt$ ? opt$.isValidKey : null; 2792 let isValidKey = opts && 'isValidKey' in opts ? opts.isValidKey : null;
2793 let map = new SplayTreeMap(compare, isValidKey); 2793 let map = new SplayTreeMap(compare, isValidKey);
2794 Maps._fillMapWithMappedIterable(map, iterable, key, value); 2794 Maps._fillMapWithMappedIterable(map, iterable, key, value);
2795 return map; 2795 return map;
2796 } 2796 }
2797 SplayTreeMap$fromIterables(keys, values, compare, isValidKey) { 2797 SplayTreeMap$fromIterables(keys, values, compare, isValidKey) {
2798 if (compare === void 0) 2798 if (compare === void 0)
2799 compare = null; 2799 compare = null;
2800 if (isValidKey === void 0) 2800 if (isValidKey === void 0)
2801 isValidKey = null; 2801 isValidKey = null;
2802 let map = new SplayTreeMap(compare, isValidKey); 2802 let map = new SplayTreeMap(compare, isValidKey);
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
3039 this[_findLeftMostDescendent](this[_currentNode].right); 3039 this[_findLeftMostDescendent](this[_currentNode].right);
3040 return true; 3040 return true;
3041 } 3041 }
3042 } 3042 }
3043 dart.defineNamedConstructor(_SplayTreeIterator, 'startAt'); 3043 dart.defineNamedConstructor(_SplayTreeIterator, 'startAt');
3044 return _SplayTreeIterator; 3044 return _SplayTreeIterator;
3045 }); 3045 });
3046 let _SplayTreeIterator = _SplayTreeIterator$(dart.dynamic); 3046 let _SplayTreeIterator = _SplayTreeIterator$(dart.dynamic);
3047 let _SplayTreeKeyIterable$ = dart.generic(function(K) { 3047 let _SplayTreeKeyIterable$ = dart.generic(function(K) {
3048 class _SplayTreeKeyIterable extends IterableBase$(K) { 3048 class _SplayTreeKeyIterable extends IterableBase$(K) {
3049 _SplayTreeKeyIterable($_tree) { 3049 _SplayTreeKeyIterable(tree$) {
3050 this[_tree] = $_tree; 3050 this[_tree] = tree$;
3051 super.IterableBase(); 3051 super.IterableBase();
3052 } 3052 }
3053 get length() { 3053 get length() {
3054 return this[_tree][_count]; 3054 return this[_tree][_count];
3055 } 3055 }
3056 get isEmpty() { 3056 get isEmpty() {
3057 return this[_tree][_count] === 0; 3057 return this[_tree][_count] === 0;
3058 } 3058 }
3059 get iterator() { 3059 get iterator() {
3060 return new _SplayTreeKeyIterator(this[_tree]); 3060 return new _SplayTreeKeyIterator(this[_tree]);
3061 } 3061 }
3062 toSet() { 3062 toSet() {
3063 let setOrMap = this[_tree]; 3063 let setOrMap = this[_tree];
3064 let set = new SplayTreeSet(dart.as(setOrMap[_comparator], dart.throw_("U nimplemented type (K, K) → int")), dart.as(setOrMap[_validKey], dart.throw_("Uni mplemented type (dynamic) → bool"))); 3064 let set = new SplayTreeSet(dart.as(setOrMap[_comparator], dart.throw_("U nimplemented type (K, K) → int")), dart.as(setOrMap[_validKey], dart.throw_("Uni mplemented type (dynamic) → bool")));
3065 set[_count] = this[_tree][_count]; 3065 set[_count] = this[_tree][_count];
3066 set[_root] = set._copyNode(this[_tree][_root]); 3066 set[_root] = set._copyNode(this[_tree][_root]);
3067 return set; 3067 return set;
3068 } 3068 }
3069 } 3069 }
3070 return _SplayTreeKeyIterable; 3070 return _SplayTreeKeyIterable;
3071 }); 3071 });
3072 let _SplayTreeKeyIterable = _SplayTreeKeyIterable$(dart.dynamic); 3072 let _SplayTreeKeyIterable = _SplayTreeKeyIterable$(dart.dynamic);
3073 let _SplayTreeValueIterable$ = dart.generic(function(K, V) { 3073 let _SplayTreeValueIterable$ = dart.generic(function(K, V) {
3074 class _SplayTreeValueIterable extends IterableBase$(V) { 3074 class _SplayTreeValueIterable extends IterableBase$(V) {
3075 _SplayTreeValueIterable($_map) { 3075 _SplayTreeValueIterable(map$) {
3076 this[_map] = $_map; 3076 this[_map] = map$;
3077 super.IterableBase(); 3077 super.IterableBase();
3078 } 3078 }
3079 get length() { 3079 get length() {
3080 return this[_map][_count]; 3080 return this[_map][_count];
3081 } 3081 }
3082 get isEmpty() { 3082 get isEmpty() {
3083 return this[_map][_count] === 0; 3083 return this[_map][_count] === 0;
3084 } 3084 }
3085 get iterator() { 3085 get iterator() {
3086 return new _SplayTreeValueIterator(this[_map]); 3086 return new _SplayTreeValueIterator(this[_map]);
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
3294 let _rest = Symbol('_rest'); 3294 let _rest = Symbol('_rest');
3295 let _containsKey = Symbol('_containsKey'); 3295 let _containsKey = Symbol('_containsKey');
3296 let _getBucket = Symbol('_getBucket'); 3296 let _getBucket = Symbol('_getBucket');
3297 let _findBucketIndex = Symbol('_findBucketIndex'); 3297 let _findBucketIndex = Symbol('_findBucketIndex');
3298 let _computeKeys = Symbol('_computeKeys'); 3298 let _computeKeys = Symbol('_computeKeys');
3299 let _get = Symbol('_get'); 3299 let _get = Symbol('_get');
3300 let _addHashTableEntry = Symbol('_addHashTableEntry'); 3300 let _addHashTableEntry = Symbol('_addHashTableEntry');
3301 let _set = Symbol('_set'); 3301 let _set = Symbol('_set');
3302 let _computeHashCode = Symbol('_computeHashCode'); 3302 let _computeHashCode = Symbol('_computeHashCode');
3303 let _removeHashTableEntry = Symbol('_removeHashTableEntry'); 3303 let _removeHashTableEntry = Symbol('_removeHashTableEntry');
3304 let _isStringKey = Symbol('_isStringKey'); 3304 let _isStringKey$ = Symbol('_isStringKey');
3305 let _isNumericKey = Symbol('_isNumericKey'); 3305 let _isNumericKey$ = Symbol('_isNumericKey');
3306 let _hasTableEntry = Symbol('_hasTableEntry'); 3306 let _hasTableEntry$ = Symbol('_hasTableEntry');
3307 let _getTableEntry = Symbol('_getTableEntry'); 3307 let _getTableEntry$ = Symbol('_getTableEntry');
3308 let _setTableEntry = Symbol('_setTableEntry'); 3308 let _setTableEntry$ = Symbol('_setTableEntry');
3309 let _deleteTableEntry = Symbol('_deleteTableEntry'); 3309 let _deleteTableEntry$ = Symbol('_deleteTableEntry');
3310 let _newHashTable = Symbol('_newHashTable'); 3310 let _newHashTable$ = Symbol('_newHashTable');
3311 let _HashMap$ = dart.generic(function(K, V) { 3311 let _HashMap$ = dart.generic(function(K, V) {
3312 class _HashMap extends core.Object { 3312 class _HashMap extends core.Object {
3313 _HashMap() { 3313 _HashMap() {
3314 this[_length] = 0; 3314 this[_length] = 0;
3315 this[_strings] = null; 3315 this[_strings] = null;
3316 this[_nums] = null; 3316 this[_nums] = null;
3317 this[_rest] = null; 3317 this[_rest] = null;
3318 this[_keys] = null; 3318 this[_keys] = null;
3319 } 3319 }
3320 get length() { 3320 get length() {
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
3511 if (dart.notNull(table !== null) && dart.notNull(_hasTableEntry(table, k ey))) { 3511 if (dart.notNull(table !== null) && dart.notNull(_hasTableEntry(table, k ey))) {
3512 let value = dart.as(_getTableEntry(table, key), V); 3512 let value = dart.as(_getTableEntry(table, key), V);
3513 _deleteTableEntry(table, key); 3513 _deleteTableEntry(table, key);
3514 this[_length] = dart.notNull(this[_length]) - 1; 3514 this[_length] = dart.notNull(this[_length]) - 1;
3515 this[_keys] = null; 3515 this[_keys] = null;
3516 return value; 3516 return value;
3517 } else { 3517 } else {
3518 return null; 3518 return null;
3519 } 3519 }
3520 } 3520 }
3521 static [_isStringKey](key) { 3521 static [_isStringKey$](key) {
3522 return dart.notNull(typeof key == string) && dart.notNull(!dart.equals(k ey, '__proto__')); 3522 return dart.notNull(typeof key == string) && dart.notNull(!dart.equals(k ey, '__proto__'));
3523 } 3523 }
3524 static [_isNumericKey](key) { 3524 static [_isNumericKey$](key) {
3525 return dart.notNull(dart.is(key, core.num)) && (key & 0x3ffffff) === key ; 3525 return dart.notNull(dart.is(key, core.num)) && (key & 0x3ffffff) === key ;
3526 } 3526 }
3527 [_computeHashCode](key) { 3527 [_computeHashCode](key) {
3528 return dart.dload(key, 'hashCode') & 0x3ffffff; 3528 return dart.dload(key, 'hashCode') & 0x3ffffff;
3529 } 3529 }
3530 static [_hasTableEntry](table, key) { 3530 static [_hasTableEntry$](table, key) {
3531 let entry = table[key]; 3531 let entry = table[key];
3532 return entry !== null; 3532 return entry !== null;
3533 } 3533 }
3534 static [_getTableEntry](table, key) { 3534 static [_getTableEntry$](table, key) {
3535 let entry = table[key]; 3535 let entry = table[key];
3536 return entry === table ? null : entry; 3536 return entry === table ? null : entry;
3537 } 3537 }
3538 static [_setTableEntry](table, key, value) { 3538 static [_setTableEntry$](table, key, value) {
3539 if (value === null) { 3539 if (value === null) {
3540 table[key] = table; 3540 table[key] = table;
3541 } else { 3541 } else {
3542 table[key] = value; 3542 table[key] = value;
3543 } 3543 }
3544 } 3544 }
3545 static [_deleteTableEntry](table, key) { 3545 static [_deleteTableEntry$](table, key) {
3546 delete table[key]; 3546 delete table[key];
3547 } 3547 }
3548 [_getBucket](table, key) { 3548 [_getBucket](table, key) {
3549 let hash = this[_computeHashCode](key); 3549 let hash = this[_computeHashCode](key);
3550 return dart.as(table[hash], core.List); 3550 return dart.as(table[hash], core.List);
3551 } 3551 }
3552 [_findBucketIndex](bucket, key) { 3552 [_findBucketIndex](bucket, key) {
3553 if (bucket === null) 3553 if (bucket === null)
3554 return -1; 3554 return -1;
3555 let length = bucket.length; 3555 let length = bucket.length;
3556 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = 2) { 3556 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = 2) {
3557 if (dart.equals(bucket[i], key)) 3557 if (dart.equals(bucket[i], key))
3558 return i; 3558 return i;
3559 } 3559 }
3560 return -1; 3560 return -1;
3561 } 3561 }
3562 static [_newHashTable]() { 3562 static [_newHashTable$]() {
3563 let table = Object.create(null); 3563 let table = Object.create(null);
3564 let temporaryKey = '<non-identifier-key>'; 3564 let temporaryKey = '<non-identifier-key>';
3565 _setTableEntry(table, temporaryKey, table); 3565 _setTableEntry(table, temporaryKey, table);
3566 _deleteTableEntry(table, temporaryKey); 3566 _deleteTableEntry(table, temporaryKey);
3567 return table; 3567 return table;
3568 } 3568 }
3569 } 3569 }
3570 return _HashMap; 3570 return _HashMap;
3571 }); 3571 });
3572 let _HashMap = _HashMap$(dart.dynamic, dart.dynamic); 3572 let _HashMap = _HashMap$(dart.dynamic, dart.dynamic);
(...skipping 13 matching lines...) Expand all
3586 return -1; 3586 return -1;
3587 } 3587 }
3588 } 3588 }
3589 return _IdentityHashMap; 3589 return _IdentityHashMap;
3590 }); 3590 });
3591 let _IdentityHashMap = _IdentityHashMap$(dart.dynamic, dart.dynamic); 3591 let _IdentityHashMap = _IdentityHashMap$(dart.dynamic, dart.dynamic);
3592 let _equals = Symbol('_equals'); 3592 let _equals = Symbol('_equals');
3593 let _hashCode = Symbol('_hashCode'); 3593 let _hashCode = Symbol('_hashCode');
3594 let _CustomHashMap$ = dart.generic(function(K, V) { 3594 let _CustomHashMap$ = dart.generic(function(K, V) {
3595 class _CustomHashMap extends _HashMap$(K, V) { 3595 class _CustomHashMap extends _HashMap$(K, V) {
3596 _CustomHashMap($_equals, $_hashCode, validKey) { 3596 _CustomHashMap(equals$, hashCode$, validKey) {
3597 this[_equals] = $_equals; 3597 this[_equals] = equals$;
3598 this[_hashCode] = $_hashCode; 3598 this[_hashCode] = hashCode$;
3599 this[_validKey] = dart.as(validKey !== null ? validKey : (v) => dart.is( v, K), _Predicate); 3599 this[_validKey] = dart.as(validKey !== null ? validKey : (v) => dart.is( v, K), _Predicate);
3600 super._HashMap(); 3600 super._HashMap();
3601 } 3601 }
3602 get(key) { 3602 get(key) {
3603 if (!dart.notNull(dart.dinvokef(this[_validKey], key))) 3603 if (!dart.notNull(dart.dinvokef(this[_validKey], key)))
3604 return null; 3604 return null;
3605 return super._get(key); 3605 return super._get(key);
3606 } 3606 }
3607 set(key, value) { 3607 set(key, value) {
3608 super._set(key, value); 3608 super._set(key, value);
(...skipping 23 matching lines...) Expand all
3632 } 3632 }
3633 toString() { 3633 toString() {
3634 return Maps.mapToString(this); 3634 return Maps.mapToString(this);
3635 } 3635 }
3636 } 3636 }
3637 return _CustomHashMap; 3637 return _CustomHashMap;
3638 }); 3638 });
3639 let _CustomHashMap = _CustomHashMap$(dart.dynamic, dart.dynamic); 3639 let _CustomHashMap = _CustomHashMap$(dart.dynamic, dart.dynamic);
3640 let HashMapKeyIterable$ = dart.generic(function(E) { 3640 let HashMapKeyIterable$ = dart.generic(function(E) {
3641 class HashMapKeyIterable extends IterableBase$(E) { 3641 class HashMapKeyIterable extends IterableBase$(E) {
3642 HashMapKeyIterable($_map) { 3642 HashMapKeyIterable(map$) {
3643 this[_map] = $_map; 3643 this[_map] = map$;
3644 super.IterableBase(); 3644 super.IterableBase();
3645 } 3645 }
3646 get length() { 3646 get length() {
3647 return dart.as(dart.dload(this[_map], '_length'), core.int); 3647 return dart.as(dart.dload(this[_map], '_length'), core.int);
3648 } 3648 }
3649 get isEmpty() { 3649 get isEmpty() {
3650 return dart.equals(dart.dload(this[_map], '_length'), 0); 3650 return dart.equals(dart.dload(this[_map], '_length'), 0);
3651 } 3651 }
3652 get iterator() { 3652 get iterator() {
3653 return new HashMapKeyIterator(this[_map], dart.as(dart.dinvoke(this[_map ], '_computeKeys'), core.List)); 3653 return new HashMapKeyIterator(this[_map], dart.as(dart.dinvoke(this[_map ], '_computeKeys'), core.List));
(...skipping 10 matching lines...) Expand all
3664 } 3664 }
3665 } 3665 }
3666 } 3666 }
3667 } 3667 }
3668 return HashMapKeyIterable; 3668 return HashMapKeyIterable;
3669 }); 3669 });
3670 let HashMapKeyIterable = HashMapKeyIterable$(dart.dynamic); 3670 let HashMapKeyIterable = HashMapKeyIterable$(dart.dynamic);
3671 let _offset = Symbol('_offset'); 3671 let _offset = Symbol('_offset');
3672 let HashMapKeyIterator$ = dart.generic(function(E) { 3672 let HashMapKeyIterator$ = dart.generic(function(E) {
3673 class HashMapKeyIterator extends core.Object { 3673 class HashMapKeyIterator extends core.Object {
3674 HashMapKeyIterator($_map, $_keys) { 3674 HashMapKeyIterator(map$, keys$) {
3675 this[_map] = $_map; 3675 this[_map] = map$;
3676 this[_keys] = $_keys; 3676 this[_keys] = keys$;
3677 this[_offset] = 0; 3677 this[_offset] = 0;
3678 this[_current] = null; 3678 this[_current] = null;
3679 } 3679 }
3680 get current() { 3680 get current() {
3681 return this[_current]; 3681 return this[_current];
3682 } 3682 }
3683 moveNext() { 3683 moveNext() {
3684 let keys = this[_keys]; 3684 let keys = this[_keys];
3685 let offset = this[_offset]; 3685 let offset = this[_offset];
3686 if (keys !== dart.dload(this[_map], '_keys')) { 3686 if (keys !== dart.dload(this[_map], '_keys')) {
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
3916 } 3916 }
3917 if (next === null) { 3917 if (next === null) {
3918 dart.assert(dart.equals(cell, this[_last])); 3918 dart.assert(dart.equals(cell, this[_last]));
3919 this[_last] = previous; 3919 this[_last] = previous;
3920 } else { 3920 } else {
3921 next[_previous] = previous; 3921 next[_previous] = previous;
3922 } 3922 }
3923 this[_length] = dart.notNull(this[_length]) - 1; 3923 this[_length] = dart.notNull(this[_length]) - 1;
3924 this[_modified](); 3924 this[_modified]();
3925 } 3925 }
3926 static [_isStringKey](key) { 3926 static [_isStringKey$](key) {
3927 return dart.notNull(typeof key == string) && dart.notNull(!dart.equals(k ey, '__proto__')); 3927 return dart.notNull(typeof key == string) && dart.notNull(!dart.equals(k ey, '__proto__'));
3928 } 3928 }
3929 static [_isNumericKey](key) { 3929 static [_isNumericKey$](key) {
3930 return dart.notNull(dart.is(key, core.num)) && (key & 0x3ffffff) === key ; 3930 return dart.notNull(dart.is(key, core.num)) && (key & 0x3ffffff) === key ;
3931 } 3931 }
3932 [_computeHashCode](key) { 3932 [_computeHashCode](key) {
3933 return dart.dload(key, 'hashCode') & 0x3ffffff; 3933 return dart.dload(key, 'hashCode') & 0x3ffffff;
3934 } 3934 }
3935 static [_getTableEntry](table, key) { 3935 static [_getTableEntry$](table, key) {
3936 return table[key]; 3936 return table[key];
3937 } 3937 }
3938 static [_setTableEntry](table, key, value) { 3938 static [_setTableEntry$](table, key, value) {
3939 dart.assert(value !== null); 3939 dart.assert(value !== null);
3940 table[key] = value; 3940 table[key] = value;
3941 } 3941 }
3942 static [_deleteTableEntry](table, key) { 3942 static [_deleteTableEntry$](table, key) {
3943 delete table[key]; 3943 delete table[key];
3944 } 3944 }
3945 [_getBucket](table, key) { 3945 [_getBucket](table, key) {
3946 let hash = this[_computeHashCode](key); 3946 let hash = this[_computeHashCode](key);
3947 return dart.as(table[hash], core.List); 3947 return dart.as(table[hash], core.List);
3948 } 3948 }
3949 [_findBucketIndex](bucket, key) { 3949 [_findBucketIndex](bucket, key) {
3950 if (bucket === null) 3950 if (bucket === null)
3951 return -1; 3951 return -1;
3952 let length = bucket.length; 3952 let length = bucket.length;
3953 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 3953 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
3954 let cell = dart.as(bucket[i], LinkedHashMapCell); 3954 let cell = dart.as(bucket[i], LinkedHashMapCell);
3955 if (dart.equals(cell[_key], key)) 3955 if (dart.equals(cell[_key], key))
3956 return i; 3956 return i;
3957 } 3957 }
3958 return -1; 3958 return -1;
3959 } 3959 }
3960 static [_newHashTable]() { 3960 static [_newHashTable$]() {
3961 let table = Object.create(null); 3961 let table = Object.create(null);
3962 let temporaryKey = '<non-identifier-key>'; 3962 let temporaryKey = '<non-identifier-key>';
3963 _setTableEntry(table, temporaryKey, table); 3963 _setTableEntry(table, temporaryKey, table);
3964 _deleteTableEntry(table, temporaryKey); 3964 _deleteTableEntry(table, temporaryKey);
3965 return table; 3965 return table;
3966 } 3966 }
3967 toString() { 3967 toString() {
3968 return Maps.mapToString(this); 3968 return Maps.mapToString(this);
3969 } 3969 }
3970 } 3970 }
(...skipping 15 matching lines...) Expand all
3986 return i; 3986 return i;
3987 } 3987 }
3988 return -1; 3988 return -1;
3989 } 3989 }
3990 } 3990 }
3991 return _LinkedIdentityHashMap; 3991 return _LinkedIdentityHashMap;
3992 }); 3992 });
3993 let _LinkedIdentityHashMap = _LinkedIdentityHashMap$(dart.dynamic, dart.dynami c); 3993 let _LinkedIdentityHashMap = _LinkedIdentityHashMap$(dart.dynamic, dart.dynami c);
3994 let _LinkedCustomHashMap$ = dart.generic(function(K, V) { 3994 let _LinkedCustomHashMap$ = dart.generic(function(K, V) {
3995 class _LinkedCustomHashMap extends _LinkedHashMap$(K, V) { 3995 class _LinkedCustomHashMap extends _LinkedHashMap$(K, V) {
3996 _LinkedCustomHashMap($_equals, $_hashCode, validKey) { 3996 _LinkedCustomHashMap(equals$, hashCode$, validKey) {
3997 this[_equals] = $_equals; 3997 this[_equals] = equals$;
3998 this[_hashCode] = $_hashCode; 3998 this[_hashCode] = hashCode$;
3999 this[_validKey] = dart.as(validKey !== null ? validKey : (v) => dart.is( v, K), _Predicate); 3999 this[_validKey] = dart.as(validKey !== null ? validKey : (v) => dart.is( v, K), _Predicate);
4000 super._LinkedHashMap(); 4000 super._LinkedHashMap();
4001 } 4001 }
4002 get(key) { 4002 get(key) {
4003 if (!dart.notNull(dart.dinvokef(this[_validKey], key))) 4003 if (!dart.notNull(dart.dinvokef(this[_validKey], key)))
4004 return null; 4004 return null;
4005 return super._get(key); 4005 return super._get(key);
4006 } 4006 }
4007 set(key, value) { 4007 set(key, value) {
4008 super._set(key, value); 4008 super._set(key, value);
(...skipping 20 matching lines...) Expand all
4029 if (this[_equals](dart.as(cell[_key], K), dart.as(key, K))) 4029 if (this[_equals](dart.as(cell[_key], K), dart.as(key, K)))
4030 return i; 4030 return i;
4031 } 4031 }
4032 return -1; 4032 return -1;
4033 } 4033 }
4034 } 4034 }
4035 return _LinkedCustomHashMap; 4035 return _LinkedCustomHashMap;
4036 }); 4036 });
4037 let _LinkedCustomHashMap = _LinkedCustomHashMap$(dart.dynamic, dart.dynamic); 4037 let _LinkedCustomHashMap = _LinkedCustomHashMap$(dart.dynamic, dart.dynamic);
4038 class LinkedHashMapCell extends core.Object { 4038 class LinkedHashMapCell extends core.Object {
4039 LinkedHashMapCell($_key, $_value) { 4039 LinkedHashMapCell(key$, value$) {
4040 this[_key] = $_key; 4040 this[_key] = key$;
4041 this[_value] = $_value; 4041 this[_value] = value$;
4042 this[_next] = null; 4042 this[_next] = null;
4043 this[_previous] = null; 4043 this[_previous] = null;
4044 } 4044 }
4045 } 4045 }
4046 let LinkedHashMapKeyIterable$ = dart.generic(function(E) { 4046 let LinkedHashMapKeyIterable$ = dart.generic(function(E) {
4047 class LinkedHashMapKeyIterable extends IterableBase$(E) { 4047 class LinkedHashMapKeyIterable extends IterableBase$(E) {
4048 LinkedHashMapKeyIterable($_map) { 4048 LinkedHashMapKeyIterable(map$) {
4049 this[_map] = $_map; 4049 this[_map] = map$;
4050 super.IterableBase(); 4050 super.IterableBase();
4051 } 4051 }
4052 get length() { 4052 get length() {
4053 return dart.as(dart.dload(this[_map], '_length'), core.int); 4053 return dart.as(dart.dload(this[_map], '_length'), core.int);
4054 } 4054 }
4055 get isEmpty() { 4055 get isEmpty() {
4056 return dart.equals(dart.dload(this[_map], '_length'), 0); 4056 return dart.equals(dart.dload(this[_map], '_length'), 0);
4057 } 4057 }
4058 get iterator() { 4058 get iterator() {
4059 return new LinkedHashMapKeyIterator(this[_map], dart.as(dart.dload(this[ _map], '_modifications'), core.int)); 4059 return new LinkedHashMapKeyIterator(this[_map], dart.as(dart.dload(this[ _map], '_modifications'), core.int));
(...skipping 12 matching lines...) Expand all
4072 cell = cell[_next]; 4072 cell = cell[_next];
4073 } 4073 }
4074 } 4074 }
4075 } 4075 }
4076 return LinkedHashMapKeyIterable; 4076 return LinkedHashMapKeyIterable;
4077 }); 4077 });
4078 let LinkedHashMapKeyIterable = LinkedHashMapKeyIterable$(dart.dynamic); 4078 let LinkedHashMapKeyIterable = LinkedHashMapKeyIterable$(dart.dynamic);
4079 let _cell = Symbol('_cell'); 4079 let _cell = Symbol('_cell');
4080 let LinkedHashMapKeyIterator$ = dart.generic(function(E) { 4080 let LinkedHashMapKeyIterator$ = dart.generic(function(E) {
4081 class LinkedHashMapKeyIterator extends core.Object { 4081 class LinkedHashMapKeyIterator extends core.Object {
4082 LinkedHashMapKeyIterator($_map, $_modifications) { 4082 LinkedHashMapKeyIterator(map$, modifications$) {
4083 this[_map] = $_map; 4083 this[_map] = map$;
4084 this[_modifications] = $_modifications; 4084 this[_modifications] = modifications$;
4085 this[_cell] = null; 4085 this[_cell] = null;
4086 this[_current] = null; 4086 this[_current] = null;
4087 this[_cell] = dart.as(dart.dload(this[_map], '_first'), LinkedHashMapCel l); 4087 this[_cell] = dart.as(dart.dload(this[_map], '_first'), LinkedHashMapCel l);
4088 } 4088 }
4089 get current() { 4089 get current() {
4090 return this[_current]; 4090 return this[_current];
4091 } 4091 }
4092 moveNext() { 4092 moveNext() {
4093 if (this[_modifications] !== dart.dload(this[_map], '_modifications')) { 4093 if (this[_modifications] !== dart.dload(this[_map], '_modifications')) {
4094 throw new core.ConcurrentModificationError(this[_map]); 4094 throw new core.ConcurrentModificationError(this[_map]);
4095 } else if (this[_cell] === null) { 4095 } else if (this[_cell] === null) {
4096 this[_current] = null; 4096 this[_current] = null;
4097 return false; 4097 return false;
4098 } else { 4098 } else {
4099 this[_current] = dart.as(this[_cell][_key], E); 4099 this[_current] = dart.as(this[_cell][_key], E);
4100 this[_cell] = this[_cell][_next]; 4100 this[_cell] = this[_cell][_next];
4101 return true; 4101 return true;
4102 } 4102 }
4103 } 4103 }
4104 } 4104 }
4105 return LinkedHashMapKeyIterator; 4105 return LinkedHashMapKeyIterator;
4106 }); 4106 });
4107 let LinkedHashMapKeyIterator = LinkedHashMapKeyIterator$(dart.dynamic); 4107 let LinkedHashMapKeyIterator = LinkedHashMapKeyIterator$(dart.dynamic);
4108 let _elements = Symbol('_elements'); 4108 let _elements = Symbol('_elements');
4109 let _computeElements = Symbol('_computeElements'); 4109 let _computeElements = Symbol('_computeElements');
4110 let _contains = Symbol('_contains'); 4110 let _contains = Symbol('_contains');
4111 let _lookup = Symbol('_lookup'); 4111 let _lookup = Symbol('_lookup');
4112 let _isStringElement = Symbol('_isStringElement'); 4112 let _isStringElement$ = Symbol('_isStringElement');
4113 let _isNumericElement = Symbol('_isNumericElement'); 4113 let _isNumericElement$ = Symbol('_isNumericElement');
4114 let _HashSet$ = dart.generic(function(E) { 4114 let _HashSet$ = dart.generic(function(E) {
4115 class _HashSet extends _HashSetBase$(E) { 4115 class _HashSet extends _HashSetBase$(E) {
4116 _HashSet() { 4116 _HashSet() {
4117 this[_length] = 0; 4117 this[_length] = 0;
4118 this[_strings] = null; 4118 this[_strings] = null;
4119 this[_nums] = null; 4119 this[_nums] = null;
4120 this[_rest] = null; 4120 this[_rest] = null;
4121 this[_elements] = null; 4121 this[_elements] = null;
4122 super._HashSetBase(); 4122 super._HashSetBase();
4123 } 4123 }
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
4289 [_removeHashTableEntry](table, element) { 4289 [_removeHashTableEntry](table, element) {
4290 if (dart.notNull(table !== null) && dart.notNull(_hasTableEntry(table, e lement))) { 4290 if (dart.notNull(table !== null) && dart.notNull(_hasTableEntry(table, e lement))) {
4291 _deleteTableEntry(table, element); 4291 _deleteTableEntry(table, element);
4292 this[_length] = dart.notNull(this[_length]) - 1; 4292 this[_length] = dart.notNull(this[_length]) - 1;
4293 this[_elements] = null; 4293 this[_elements] = null;
4294 return true; 4294 return true;
4295 } else { 4295 } else {
4296 return false; 4296 return false;
4297 } 4297 }
4298 } 4298 }
4299 static [_isStringElement](element) { 4299 static [_isStringElement$](element) {
4300 return dart.notNull(typeof element == string) && dart.notNull(!dart.equa ls(element, '__proto__')); 4300 return dart.notNull(typeof element == string) && dart.notNull(!dart.equa ls(element, '__proto__'));
4301 } 4301 }
4302 static [_isNumericElement](element) { 4302 static [_isNumericElement$](element) {
4303 return dart.notNull(dart.is(element, core.num)) && (element & 0x3ffffff) === element; 4303 return dart.notNull(dart.is(element, core.num)) && (element & 0x3ffffff) === element;
4304 } 4304 }
4305 [_computeHashCode](element) { 4305 [_computeHashCode](element) {
4306 return dart.dload(element, 'hashCode') & 0x3ffffff; 4306 return dart.dload(element, 'hashCode') & 0x3ffffff;
4307 } 4307 }
4308 static [_hasTableEntry](table, key) { 4308 static [_hasTableEntry$](table, key) {
4309 let entry = table[key]; 4309 let entry = table[key];
4310 return entry !== null; 4310 return entry !== null;
4311 } 4311 }
4312 static [_setTableEntry](table, key, value) { 4312 static [_setTableEntry$](table, key, value) {
4313 dart.assert(value !== null); 4313 dart.assert(value !== null);
4314 table[key] = value; 4314 table[key] = value;
4315 } 4315 }
4316 static [_deleteTableEntry](table, key) { 4316 static [_deleteTableEntry$](table, key) {
4317 delete table[key]; 4317 delete table[key];
4318 } 4318 }
4319 [_getBucket](table, element) { 4319 [_getBucket](table, element) {
4320 let hash = this[_computeHashCode](element); 4320 let hash = this[_computeHashCode](element);
4321 return dart.as(table[hash], core.List); 4321 return dart.as(table[hash], core.List);
4322 } 4322 }
4323 [_findBucketIndex](bucket, element) { 4323 [_findBucketIndex](bucket, element) {
4324 if (bucket === null) 4324 if (bucket === null)
4325 return -1; 4325 return -1;
4326 let length = bucket.length; 4326 let length = bucket.length;
4327 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 4327 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
4328 if (dart.equals(bucket[i], element)) 4328 if (dart.equals(bucket[i], element))
4329 return i; 4329 return i;
4330 } 4330 }
4331 return -1; 4331 return -1;
4332 } 4332 }
4333 static [_newHashTable]() { 4333 static [_newHashTable$]() {
4334 let table = Object.create(null); 4334 let table = Object.create(null);
4335 let temporaryKey = '<non-identifier-key>'; 4335 let temporaryKey = '<non-identifier-key>';
4336 _setTableEntry(table, temporaryKey, table); 4336 _setTableEntry(table, temporaryKey, table);
4337 _deleteTableEntry(table, temporaryKey); 4337 _deleteTableEntry(table, temporaryKey);
4338 return table; 4338 return table;
4339 } 4339 }
4340 } 4340 }
4341 return _HashSet; 4341 return _HashSet;
4342 }); 4342 });
4343 let _HashSet = _HashSet$(dart.dynamic); 4343 let _HashSet = _HashSet$(dart.dynamic);
(...skipping 16 matching lines...) Expand all
4360 return -1; 4360 return -1;
4361 } 4361 }
4362 } 4362 }
4363 return _IdentityHashSet; 4363 return _IdentityHashSet;
4364 }); 4364 });
4365 let _IdentityHashSet = _IdentityHashSet$(dart.dynamic); 4365 let _IdentityHashSet = _IdentityHashSet$(dart.dynamic);
4366 let _equality = Symbol('_equality'); 4366 let _equality = Symbol('_equality');
4367 let _hasher = Symbol('_hasher'); 4367 let _hasher = Symbol('_hasher');
4368 let _CustomHashSet$ = dart.generic(function(E) { 4368 let _CustomHashSet$ = dart.generic(function(E) {
4369 class _CustomHashSet extends _HashSet$(E) { 4369 class _CustomHashSet extends _HashSet$(E) {
4370 _CustomHashSet($_equality, $_hasher, validKey) { 4370 _CustomHashSet(equality, hasher, validKey) {
4371 this[_equality] = $_equality; 4371 this[_equality] = equality;
4372 this[_hasher] = $_hasher; 4372 this[_hasher] = hasher;
4373 this[_validKey] = dart.as(validKey !== null ? validKey : (x) => dart.is( x, E), _Predicate); 4373 this[_validKey] = dart.as(validKey !== null ? validKey : (x) => dart.is( x, E), _Predicate);
4374 super._HashSet(); 4374 super._HashSet();
4375 } 4375 }
4376 [_newSet]() { 4376 [_newSet]() {
4377 return new _CustomHashSet(this[_equality], this[_hasher], this[_validKey ]); 4377 return new _CustomHashSet(this[_equality], this[_hasher], this[_validKey ]);
4378 } 4378 }
4379 [_findBucketIndex](bucket, element) { 4379 [_findBucketIndex](bucket, element) {
4380 if (bucket === null) 4380 if (bucket === null)
4381 return -1; 4381 return -1;
4382 let length = bucket.length; 4382 let length = bucket.length;
(...skipping 23 matching lines...) Expand all
4406 if (!dart.notNull(dart.dinvokef(this[_validKey], object))) 4406 if (!dart.notNull(dart.dinvokef(this[_validKey], object)))
4407 return false; 4407 return false;
4408 return super._remove(object); 4408 return super._remove(object);
4409 } 4409 }
4410 } 4410 }
4411 return _CustomHashSet; 4411 return _CustomHashSet;
4412 }); 4412 });
4413 let _CustomHashSet = _CustomHashSet$(dart.dynamic); 4413 let _CustomHashSet = _CustomHashSet$(dart.dynamic);
4414 let HashSetIterator$ = dart.generic(function(E) { 4414 let HashSetIterator$ = dart.generic(function(E) {
4415 class HashSetIterator extends core.Object { 4415 class HashSetIterator extends core.Object {
4416 HashSetIterator($_set, $_elements) { 4416 HashSetIterator(set$, elements$) {
4417 this[_set] = $_set; 4417 this[_set] = set$;
4418 this[_elements] = $_elements; 4418 this[_elements] = elements$;
4419 this[_offset] = 0; 4419 this[_offset] = 0;
4420 this[_current] = null; 4420 this[_current] = null;
4421 } 4421 }
4422 get current() { 4422 get current() {
4423 return this[_current]; 4423 return this[_current];
4424 } 4424 }
4425 moveNext() { 4425 moveNext() {
4426 let elements = this[_elements]; 4426 let elements = this[_elements];
4427 let offset = this[_offset]; 4427 let offset = this[_offset];
4428 if (elements !== dart.dload(this[_set], '_elements')) { 4428 if (elements !== dart.dload(this[_set], '_elements')) {
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
4659 } 4659 }
4660 if (next === null) { 4660 if (next === null) {
4661 dart.assert(dart.equals(cell, this[_last])); 4661 dart.assert(dart.equals(cell, this[_last]));
4662 this[_last] = previous; 4662 this[_last] = previous;
4663 } else { 4663 } else {
4664 next[_previous] = previous; 4664 next[_previous] = previous;
4665 } 4665 }
4666 this[_length] = dart.notNull(this[_length]) - 1; 4666 this[_length] = dart.notNull(this[_length]) - 1;
4667 this[_modified](); 4667 this[_modified]();
4668 } 4668 }
4669 static [_isStringElement](element) { 4669 static [_isStringElement$](element) {
4670 return dart.notNull(typeof element == string) && dart.notNull(!dart.equa ls(element, '__proto__')); 4670 return dart.notNull(typeof element == string) && dart.notNull(!dart.equa ls(element, '__proto__'));
4671 } 4671 }
4672 static [_isNumericElement](element) { 4672 static [_isNumericElement$](element) {
4673 return dart.notNull(dart.is(element, core.num)) && (element & 0x3ffffff) === element; 4673 return dart.notNull(dart.is(element, core.num)) && (element & 0x3ffffff) === element;
4674 } 4674 }
4675 [_computeHashCode](element) { 4675 [_computeHashCode](element) {
4676 return dart.dload(element, 'hashCode') & 0x3ffffff; 4676 return dart.dload(element, 'hashCode') & 0x3ffffff;
4677 } 4677 }
4678 static [_getTableEntry](table, key) { 4678 static [_getTableEntry$](table, key) {
4679 return table[key]; 4679 return table[key];
4680 } 4680 }
4681 static [_setTableEntry](table, key, value) { 4681 static [_setTableEntry$](table, key, value) {
4682 dart.assert(value !== null); 4682 dart.assert(value !== null);
4683 table[key] = value; 4683 table[key] = value;
4684 } 4684 }
4685 static [_deleteTableEntry](table, key) { 4685 static [_deleteTableEntry$](table, key) {
4686 delete table[key]; 4686 delete table[key];
4687 } 4687 }
4688 [_getBucket](table, element) { 4688 [_getBucket](table, element) {
4689 let hash = this[_computeHashCode](element); 4689 let hash = this[_computeHashCode](element);
4690 return dart.as(table[hash], core.List); 4690 return dart.as(table[hash], core.List);
4691 } 4691 }
4692 [_findBucketIndex](bucket, element) { 4692 [_findBucketIndex](bucket, element) {
4693 if (bucket === null) 4693 if (bucket === null)
4694 return -1; 4694 return -1;
4695 let length = bucket.length; 4695 let length = bucket.length;
4696 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 4696 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
4697 let cell = dart.as(bucket[i], LinkedHashSetCell); 4697 let cell = dart.as(bucket[i], LinkedHashSetCell);
4698 if (dart.equals(cell[_element], element)) 4698 if (dart.equals(cell[_element], element))
4699 return i; 4699 return i;
4700 } 4700 }
4701 return -1; 4701 return -1;
4702 } 4702 }
4703 static [_newHashTable]() { 4703 static [_newHashTable$]() {
4704 let table = Object.create(null); 4704 let table = Object.create(null);
4705 let temporaryKey = '<non-identifier-key>'; 4705 let temporaryKey = '<non-identifier-key>';
4706 _setTableEntry(table, temporaryKey, table); 4706 _setTableEntry(table, temporaryKey, table);
4707 _deleteTableEntry(table, temporaryKey); 4707 _deleteTableEntry(table, temporaryKey);
4708 return table; 4708 return table;
4709 } 4709 }
4710 } 4710 }
4711 return _LinkedHashSet; 4711 return _LinkedHashSet;
4712 }); 4712 });
4713 let _LinkedHashSet = _LinkedHashSet$(dart.dynamic); 4713 let _LinkedHashSet = _LinkedHashSet$(dart.dynamic);
(...skipping 15 matching lines...) Expand all
4729 return i; 4729 return i;
4730 } 4730 }
4731 return -1; 4731 return -1;
4732 } 4732 }
4733 } 4733 }
4734 return _LinkedIdentityHashSet; 4734 return _LinkedIdentityHashSet;
4735 }); 4735 });
4736 let _LinkedIdentityHashSet = _LinkedIdentityHashSet$(dart.dynamic); 4736 let _LinkedIdentityHashSet = _LinkedIdentityHashSet$(dart.dynamic);
4737 let _LinkedCustomHashSet$ = dart.generic(function(E) { 4737 let _LinkedCustomHashSet$ = dart.generic(function(E) {
4738 class _LinkedCustomHashSet extends _LinkedHashSet$(E) { 4738 class _LinkedCustomHashSet extends _LinkedHashSet$(E) {
4739 _LinkedCustomHashSet($_equality, $_hasher, validKey) { 4739 _LinkedCustomHashSet(equality, hasher, validKey) {
4740 this[_equality] = $_equality; 4740 this[_equality] = equality;
4741 this[_hasher] = $_hasher; 4741 this[_hasher] = hasher;
4742 this[_validKey] = dart.as(validKey !== null ? validKey : (x) => dart.is( x, E), _Predicate); 4742 this[_validKey] = dart.as(validKey !== null ? validKey : (x) => dart.is( x, E), _Predicate);
4743 super._LinkedHashSet(); 4743 super._LinkedHashSet();
4744 } 4744 }
4745 [_newSet]() { 4745 [_newSet]() {
4746 return new _LinkedCustomHashSet(this[_equality], this[_hasher], this[_va lidKey]); 4746 return new _LinkedCustomHashSet(this[_equality], this[_hasher], this[_va lidKey]);
4747 } 4747 }
4748 [_findBucketIndex](bucket, element) { 4748 [_findBucketIndex](bucket, element) {
4749 if (bucket === null) 4749 if (bucket === null)
4750 return -1; 4750 return -1;
4751 let length = bucket.length; 4751 let length = bucket.length;
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
4789 if (dart.dinvokef(this[_validKey], element)) { 4789 if (dart.dinvokef(this[_validKey], element)) {
4790 super._remove(element); 4790 super._remove(element);
4791 } 4791 }
4792 } 4792 }
4793 } 4793 }
4794 } 4794 }
4795 return _LinkedCustomHashSet; 4795 return _LinkedCustomHashSet;
4796 }); 4796 });
4797 let _LinkedCustomHashSet = _LinkedCustomHashSet$(dart.dynamic); 4797 let _LinkedCustomHashSet = _LinkedCustomHashSet$(dart.dynamic);
4798 class LinkedHashSetCell extends core.Object { 4798 class LinkedHashSetCell extends core.Object {
4799 LinkedHashSetCell($_element) { 4799 LinkedHashSetCell(element$) {
4800 this[_element] = $_element; 4800 this[_element] = element$;
4801 this[_next] = null; 4801 this[_next] = null;
4802 this[_previous] = null; 4802 this[_previous] = null;
4803 } 4803 }
4804 } 4804 }
4805 let LinkedHashSetIterator$ = dart.generic(function(E) { 4805 let LinkedHashSetIterator$ = dart.generic(function(E) {
4806 class LinkedHashSetIterator extends core.Object { 4806 class LinkedHashSetIterator extends core.Object {
4807 LinkedHashSetIterator($_set, $_modifications) { 4807 LinkedHashSetIterator(set$, modifications$) {
4808 this[_set] = $_set; 4808 this[_set] = set$;
4809 this[_modifications] = $_modifications; 4809 this[_modifications] = modifications$;
4810 this[_cell] = null; 4810 this[_cell] = null;
4811 this[_current] = null; 4811 this[_current] = null;
4812 this[_cell] = dart.as(dart.dload(this[_set], '_first'), LinkedHashSetCel l); 4812 this[_cell] = dart.as(dart.dload(this[_set], '_first'), LinkedHashSetCel l);
4813 } 4813 }
4814 get current() { 4814 get current() {
4815 return this[_current]; 4815 return this[_current];
4816 } 4816 }
4817 moveNext() { 4817 moveNext() {
4818 if (this[_modifications] !== dart.dload(this[_set], '_modifications')) { 4818 if (this[_modifications] !== dart.dload(this[_set], '_modifications')) {
4819 throw new core.ConcurrentModificationError(this[_set]); 4819 throw new core.ConcurrentModificationError(this[_set]);
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
4888 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable; 4888 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable;
4889 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$; 4889 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$;
4890 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator; 4890 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator;
4891 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$; 4891 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$;
4892 exports.HashSetIterator = HashSetIterator; 4892 exports.HashSetIterator = HashSetIterator;
4893 exports.HashSetIterator$ = HashSetIterator$; 4893 exports.HashSetIterator$ = HashSetIterator$;
4894 exports.LinkedHashSetCell = LinkedHashSetCell; 4894 exports.LinkedHashSetCell = LinkedHashSetCell;
4895 exports.LinkedHashSetIterator = LinkedHashSetIterator; 4895 exports.LinkedHashSetIterator = LinkedHashSetIterator;
4896 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$; 4896 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$;
4897 })(collection || (collection = {})); 4897 })(collection || (collection = {}));
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698