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

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

Issue 1100633006: Generate static calls for Object fields and methods (Closed) Base URL: https://github.com/dart-lang/dev_compiler.git@master
Patch Set: Better static dispatch check 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 } 9 }
10 get [core.$length]() { 10 get [core.$length]() {
11 return this[_source][core.$length]; 11 return this[_source][core.$length];
12 } 12 }
13 [core.$get](index) { 13 [core.$get](index) {
14 return this[_source][core.$elementAt](index); 14 return this[_source][core.$elementAt](index);
15 } 15 }
16 } 16 }
17 return UnmodifiableListView; 17 return UnmodifiableListView;
18 }); 18 });
19 dart.defineLazyClassGeneric(exports, 'UnmodifiableListView', {get: Unmodifiabl eListView$}); 19 dart.defineLazyClassGeneric(exports, 'UnmodifiableListView', {get: Unmodifiabl eListView$});
20 // Function _defaultEquals: (dynamic, dynamic) → bool 20 // Function _defaultEquals: (dynamic, dynamic) → bool
21 function _defaultEquals(a, b) { 21 function _defaultEquals(a, b) {
22 return dart.equals(a, b); 22 return dart.equals(a, b);
23 } 23 }
24 // Function _defaultHashCode: (dynamic) → int 24 // Function _defaultHashCode: (dynamic) → int
25 function _defaultHashCode(a) { 25 function _defaultHashCode(a) {
26 return a.hashCode; 26 return dart.hashCode(a);
27 } 27 }
28 let _Equality$ = dart.generic(function(K) { 28 let _Equality$ = dart.generic(function(K) {
29 let _Equality = dart.typedef('_Equality', () => dart.functionType(core.bool, [K, K])); 29 let _Equality = dart.typedef('_Equality', () => dart.functionType(core.bool, [K, K]));
30 return _Equality; 30 return _Equality;
31 }); 31 });
32 let _Equality = _Equality$(); 32 let _Equality = _Equality$();
33 let _Hasher$ = dart.generic(function(K) { 33 let _Hasher$ = dart.generic(function(K) {
34 let _Hasher = dart.typedef('_Hasher', () => dart.functionType(core.int, [K]) ); 34 let _Hasher = dart.typedef('_Hasher', () => dart.functionType(core.int, [K]) );
35 return _Hasher; 35 return _Hasher;
36 }); 36 });
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 do { 255 do {
256 buffer.write(`${iterator.current}`); 256 buffer.write(`${iterator.current}`);
257 } while (iterator.moveNext()); 257 } while (iterator.moveNext());
258 } else { 258 } else {
259 buffer.write(`${iterator.current}`); 259 buffer.write(`${iterator.current}`);
260 while (iterator.moveNext()) { 260 while (iterator.moveNext()) {
261 buffer.write(separator); 261 buffer.write(separator);
262 buffer.write(`${iterator.current}`); 262 buffer.write(`${iterator.current}`);
263 } 263 }
264 } 264 }
265 return buffer.toString(); 265 return dart.toString(buffer);
266 } 266 }
267 [core.$any](test) { 267 [core.$any](test) {
268 for (let element of this) { 268 for (let element of this) {
269 if (test(element)) 269 if (test(element))
270 return true; 270 return true;
271 } 271 }
272 return false; 272 return false;
273 } 273 }
274 [core.$take](n) { 274 [core.$take](n) {
275 return new (_internal.TakeIterable$(E))(this, n); 275 return new (_internal.TakeIterable$(E))(this, n);
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
511 do { 511 do {
512 buffer.write(`${iterator.current}`); 512 buffer.write(`${iterator.current}`);
513 } while (iterator.moveNext()); 513 } while (iterator.moveNext());
514 } else { 514 } else {
515 buffer.write(`${iterator.current}`); 515 buffer.write(`${iterator.current}`);
516 while (iterator.moveNext()) { 516 while (iterator.moveNext()) {
517 buffer.write(separator); 517 buffer.write(separator);
518 buffer.write(`${iterator.current}`); 518 buffer.write(`${iterator.current}`);
519 } 519 }
520 } 520 }
521 return buffer.toString(); 521 return dart.toString(buffer);
522 } 522 }
523 [core.$any](f) { 523 [core.$any](f) {
524 for (let element of this) { 524 for (let element of this) {
525 if (f(element)) 525 if (f(element))
526 return true; 526 return true;
527 } 527 }
528 return false; 528 return false;
529 } 529 }
530 [core.$toList](opts) { 530 [core.$toList](opts) {
531 let growable = opts && 'growable' in opts ? opts.growable : true; 531 let growable = opts && 'growable' in opts ? opts.growable : true;
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
712 do { 712 do {
713 buffer.write(`${iterator.current}`); 713 buffer.write(`${iterator.current}`);
714 } while (iterator.moveNext()); 714 } while (iterator.moveNext());
715 } else { 715 } else {
716 buffer.write(`${iterator.current}`); 716 buffer.write(`${iterator.current}`);
717 while (iterator.moveNext()) { 717 while (iterator.moveNext()) {
718 buffer.write(separator); 718 buffer.write(separator);
719 buffer.write(`${iterator.current}`); 719 buffer.write(`${iterator.current}`);
720 } 720 }
721 } 721 }
722 return buffer.toString(); 722 return dart.toString(buffer);
723 } 723 }
724 [core.$any](f) { 724 [core.$any](f) {
725 for (let element of this) { 725 for (let element of this) {
726 if (f(element)) 726 if (f(element))
727 return true; 727 return true;
728 } 728 }
729 return false; 729 return false;
730 } 730 }
731 [core.$toList](opts) { 731 [core.$toList](opts) {
732 let growable = opts && 'growable' in opts ? opts.growable : true; 732 let growable = opts && 'growable' in opts ? opts.growable : true;
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
858 return `${leftDelimiter}...${rightDelimiter}`; 858 return `${leftDelimiter}...${rightDelimiter}`;
859 } 859 }
860 let parts = []; 860 let parts = [];
861 IterableBase[_toStringVisiting][core.$add](iterable); 861 IterableBase[_toStringVisiting][core.$add](iterable);
862 try { 862 try {
863 IterableBase[_iterablePartsToStrings](iterable, parts); 863 IterableBase[_iterablePartsToStrings](iterable, parts);
864 } finally { 864 } finally {
865 dart.assert(core.identical(IterableBase[_toStringVisiting][core.$last] , iterable)); 865 dart.assert(core.identical(IterableBase[_toStringVisiting][core.$last] , iterable));
866 IterableBase[_toStringVisiting][core.$removeLast](); 866 IterableBase[_toStringVisiting][core.$removeLast]();
867 } 867 }
868 return (() => { 868 return dart.toString((() => {
869 let _ = new core.StringBuffer(leftDelimiter); 869 let _ = new core.StringBuffer(leftDelimiter);
870 _.writeAll(parts, ", "); 870 _.writeAll(parts, ", ");
871 _.write(rightDelimiter); 871 _.write(rightDelimiter);
872 return _; 872 return _;
873 })().toString(); 873 })());
874 } 874 }
875 static iterableToFullString(iterable, leftDelimiter, rightDelimiter) { 875 static iterableToFullString(iterable, leftDelimiter, rightDelimiter) {
876 if (leftDelimiter === void 0) 876 if (leftDelimiter === void 0)
877 leftDelimiter = '('; 877 leftDelimiter = '(';
878 if (rightDelimiter === void 0) 878 if (rightDelimiter === void 0)
879 rightDelimiter = ')'; 879 rightDelimiter = ')';
880 if (IterableBase[_isToStringVisiting](iterable)) { 880 if (IterableBase[_isToStringVisiting](iterable)) {
881 return `${leftDelimiter}...${rightDelimiter}`; 881 return `${leftDelimiter}...${rightDelimiter}`;
882 } 882 }
883 let buffer = new core.StringBuffer(leftDelimiter); 883 let buffer = new core.StringBuffer(leftDelimiter);
884 IterableBase[_toStringVisiting][core.$add](iterable); 884 IterableBase[_toStringVisiting][core.$add](iterable);
885 try { 885 try {
886 buffer.writeAll(iterable, ", "); 886 buffer.writeAll(iterable, ", ");
887 } finally { 887 } finally {
888 dart.assert(core.identical(IterableBase[_toStringVisiting][core.$last] , iterable)); 888 dart.assert(core.identical(IterableBase[_toStringVisiting][core.$last] , iterable));
889 IterableBase[_toStringVisiting][core.$removeLast](); 889 IterableBase[_toStringVisiting][core.$removeLast]();
890 } 890 }
891 buffer.write(rightDelimiter); 891 buffer.write(rightDelimiter);
892 return buffer.toString(); 892 return dart.toString(buffer);
893 } 893 }
894 static [_isToStringVisiting](o) { 894 static [_isToStringVisiting](o) {
895 for (let i = 0; dart.notNull(i) < dart.notNull(IterableBase[_toStringVis iting][core.$length]); i = dart.notNull(i) + 1) { 895 for (let i = 0; dart.notNull(i) < dart.notNull(IterableBase[_toStringVis iting][core.$length]); i = dart.notNull(i) + 1) {
896 if (core.identical(o, IterableBase[_toStringVisiting][core.$get](i))) 896 if (core.identical(o, IterableBase[_toStringVisiting][core.$get](i)))
897 return true; 897 return true;
898 } 898 }
899 return false; 899 return false;
900 } 900 }
901 static [_iterablePartsToStrings](iterable, parts) { 901 static [_iterablePartsToStrings](iterable, parts) {
902 let LENGTH_LIMIT = 80; 902 let LENGTH_LIMIT = 80;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
972 } 972 }
973 if (elision != null) { 973 if (elision != null) {
974 parts[core.$add](elision); 974 parts[core.$add](elision);
975 } 975 }
976 parts[core.$add](penultimateString); 976 parts[core.$add](penultimateString);
977 parts[core.$add](ultimateString); 977 parts[core.$add](ultimateString);
978 } 978 }
979 } 979 }
980 IterableBase[dart.implements] = () => [core.Iterable$(E)]; 980 IterableBase[dart.implements] = () => [core.Iterable$(E)];
981 dart.defineLazyProperties(IterableBase, { 981 dart.defineLazyProperties(IterableBase, {
982 get _toStringVisiting() { 982 get [_toStringVisiting]() {
983 return []; 983 return [];
984 } 984 }
985 }); 985 });
986 return IterableBase; 986 return IterableBase;
987 }); 987 });
988 let IterableBase = IterableBase$(); 988 let IterableBase = IterableBase$();
989 let _NOT_MOVED_YET = Symbol('_NOT_MOVED_YET'); 989 let _NOT_MOVED_YET = Symbol('_NOT_MOVED_YET');
990 let _iterator = Symbol('_iterator'); 990 let _iterator = Symbol('_iterator');
991 let _state = Symbol('_state'); 991 let _state = Symbol('_state');
992 let _move = Symbol('_move'); 992 let _move = Symbol('_move');
(...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after
1468 return match; 1468 return match;
1469 throw _internal.IterableElementError.noElement(); 1469 throw _internal.IterableElementError.noElement();
1470 } 1470 }
1471 [core.$join](separator) { 1471 [core.$join](separator) {
1472 if (separator === void 0) 1472 if (separator === void 0)
1473 separator = ""; 1473 separator = "";
1474 if (this[core.$length] == 0) 1474 if (this[core.$length] == 0)
1475 return ""; 1475 return "";
1476 let buffer = new core.StringBuffer(); 1476 let buffer = new core.StringBuffer();
1477 buffer.writeAll(this, separator); 1477 buffer.writeAll(this, separator);
1478 return buffer.toString(); 1478 return dart.toString(buffer);
1479 } 1479 }
1480 [core.$where](test) { 1480 [core.$where](test) {
1481 return new (_internal.WhereIterable$(E))(this, test); 1481 return new (_internal.WhereIterable$(E))(this, test);
1482 } 1482 }
1483 [core.$map](f) { 1483 [core.$map](f) {
1484 return new _internal.MappedListIterable(this, f); 1484 return new _internal.MappedListIterable(this, f);
1485 } 1485 }
1486 [core.$expand](f) { 1486 [core.$expand](f) {
1487 return new (_internal.ExpandIterable$(E, dart.dynamic))(this, f); 1487 return new (_internal.ExpandIterable$(E, dart.dynamic))(this, f);
1488 } 1488 }
(...skipping 504 matching lines...) Expand 10 before | Expand all | Expand 10 after
1993 get length() { 1993 get length() {
1994 return this[_map].length; 1994 return this[_map].length;
1995 } 1995 }
1996 get keys() { 1996 get keys() {
1997 return this[_map].keys; 1997 return this[_map].keys;
1998 } 1998 }
1999 remove(key) { 1999 remove(key) {
2000 return this[_map].remove(key); 2000 return this[_map].remove(key);
2001 } 2001 }
2002 toString() { 2002 toString() {
2003 return this[_map].toString(); 2003 return dart.toString(this[_map]);
2004 } 2004 }
2005 get values() { 2005 get values() {
2006 return this[_map].values; 2006 return this[_map].values;
2007 } 2007 }
2008 } 2008 }
2009 MapView[dart.implements] = () => [core.Map$(K, V)]; 2009 MapView[dart.implements] = () => [core.Map$(K, V)];
2010 return MapView; 2010 return MapView;
2011 }); 2011 });
2012 let MapView = MapView$(); 2012 let MapView = MapView$();
2013 let UnmodifiableMapView$ = dart.generic(function(K, V) { 2013 let UnmodifiableMapView$ = dart.generic(function(K, V) {
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
2079 first = false; 2079 first = false;
2080 result.write(k); 2080 result.write(k);
2081 result.write(': '); 2081 result.write(': ');
2082 result.write(v); 2082 result.write(v);
2083 }); 2083 });
2084 result.write('}'); 2084 result.write('}');
2085 } finally { 2085 } finally {
2086 dart.assert(core.identical(IterableBase[_toStringVisiting][core.$last], m)); 2086 dart.assert(core.identical(IterableBase[_toStringVisiting][core.$last], m));
2087 IterableBase[_toStringVisiting][core.$removeLast](); 2087 IterableBase[_toStringVisiting][core.$removeLast]();
2088 } 2088 }
2089 return result.toString(); 2089 return dart.toString(result);
2090 } 2090 }
2091 static [_id](x) { 2091 static [_id](x) {
2092 return x; 2092 return x;
2093 } 2093 }
2094 static [_fillMapWithMappedIterable](map, iterable, key, value) { 2094 static [_fillMapWithMappedIterable](map, iterable, key, value) {
2095 if (key == null) 2095 if (key == null)
2096 key = Maps[_id]; 2096 key = Maps[_id];
2097 if (value == null) 2097 if (value == null)
2098 value = Maps[_id]; 2098 value = Maps[_id];
2099 for (let element of iterable) { 2099 for (let element of iterable) {
(...skipping 1528 matching lines...) Expand 10 before | Expand all | Expand 10 after
3628 return null; 3628 return null;
3629 } 3629 }
3630 } 3630 }
3631 static [_isStringKey](key) { 3631 static [_isStringKey](key) {
3632 return typeof key == 'string' && dart.notNull(!dart.equals(key, '__proto __')); 3632 return typeof key == 'string' && dart.notNull(!dart.equals(key, '__proto __'));
3633 } 3633 }
3634 static [_isNumericKey](key) { 3634 static [_isNumericKey](key) {
3635 return dart.is(key, core.num) && (key & 0x3ffffff) === key; 3635 return dart.is(key, core.num) && (key & 0x3ffffff) === key;
3636 } 3636 }
3637 [_computeHashCode](key) { 3637 [_computeHashCode](key) {
3638 return key.hashCode & 0x3ffffff; 3638 return dart.hashCode(key) & 0x3ffffff;
3639 } 3639 }
3640 static [_hasTableEntry](table, key) { 3640 static [_hasTableEntry](table, key) {
3641 let entry = table[key]; 3641 let entry = table[key];
3642 return entry != null; 3642 return entry != null;
3643 } 3643 }
3644 static [_getTableEntry](table, key) { 3644 static [_getTableEntry](table, key) {
3645 let entry = table[key]; 3645 let entry = table[key];
3646 return entry === table ? null : entry; 3646 return entry === table ? null : entry;
3647 } 3647 }
3648 static [_setTableEntry](table, key, value) { 3648 static [_setTableEntry](table, key, value) {
(...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after
4036 this[_length] = dart.notNull(this[_length]) - 1; 4036 this[_length] = dart.notNull(this[_length]) - 1;
4037 this[_modified](); 4037 this[_modified]();
4038 } 4038 }
4039 static [_isStringKey](key) { 4039 static [_isStringKey](key) {
4040 return typeof key == 'string' && dart.notNull(!dart.equals(key, '__proto __')); 4040 return typeof key == 'string' && dart.notNull(!dart.equals(key, '__proto __'));
4041 } 4041 }
4042 static [_isNumericKey](key) { 4042 static [_isNumericKey](key) {
4043 return dart.is(key, core.num) && (key & 0x3ffffff) === key; 4043 return dart.is(key, core.num) && (key & 0x3ffffff) === key;
4044 } 4044 }
4045 [_computeHashCode](key) { 4045 [_computeHashCode](key) {
4046 return key.hashCode & 0x3ffffff; 4046 return dart.hashCode(key) & 0x3ffffff;
4047 } 4047 }
4048 static [_getTableEntry](table, key) { 4048 static [_getTableEntry](table, key) {
4049 return table[key]; 4049 return table[key];
4050 } 4050 }
4051 static [_setTableEntry](table, key, value) { 4051 static [_setTableEntry](table, key, value) {
4052 dart.assert(value != null); 4052 dart.assert(value != null);
4053 table[key] = value; 4053 table[key] = value;
4054 } 4054 }
4055 static [_deleteTableEntry](table, key) { 4055 static [_deleteTableEntry](table, key) {
4056 delete table[key]; 4056 delete table[key];
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after
4411 return false; 4411 return false;
4412 } 4412 }
4413 } 4413 }
4414 static [_isStringElement](element) { 4414 static [_isStringElement](element) {
4415 return typeof element == 'string' && dart.notNull(!dart.equals(element, '__proto__')); 4415 return typeof element == 'string' && dart.notNull(!dart.equals(element, '__proto__'));
4416 } 4416 }
4417 static [_isNumericElement](element) { 4417 static [_isNumericElement](element) {
4418 return dart.is(element, core.num) && (element & 0x3ffffff) === element; 4418 return dart.is(element, core.num) && (element & 0x3ffffff) === element;
4419 } 4419 }
4420 [_computeHashCode](element) { 4420 [_computeHashCode](element) {
4421 return element.hashCode & 0x3ffffff; 4421 return dart.hashCode(element) & 0x3ffffff;
4422 } 4422 }
4423 static [_hasTableEntry](table, key) { 4423 static [_hasTableEntry](table, key) {
4424 let entry = table[key]; 4424 let entry = table[key];
4425 return entry != null; 4425 return entry != null;
4426 } 4426 }
4427 static [_setTableEntry](table, key, value) { 4427 static [_setTableEntry](table, key, value) {
4428 dart.assert(value != null); 4428 dart.assert(value != null);
4429 table[key] = value; 4429 table[key] = value;
4430 } 4430 }
4431 static [_deleteTableEntry](table, key) { 4431 static [_deleteTableEntry](table, key) {
(...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after
4782 this[_length] = dart.notNull(this[_length]) - 1; 4782 this[_length] = dart.notNull(this[_length]) - 1;
4783 this[_modified](); 4783 this[_modified]();
4784 } 4784 }
4785 static [_isStringElement](element) { 4785 static [_isStringElement](element) {
4786 return typeof element == 'string' && dart.notNull(!dart.equals(element, '__proto__')); 4786 return typeof element == 'string' && dart.notNull(!dart.equals(element, '__proto__'));
4787 } 4787 }
4788 static [_isNumericElement](element) { 4788 static [_isNumericElement](element) {
4789 return dart.is(element, core.num) && (element & 0x3ffffff) === element; 4789 return dart.is(element, core.num) && (element & 0x3ffffff) === element;
4790 } 4790 }
4791 [_computeHashCode](element) { 4791 [_computeHashCode](element) {
4792 return element.hashCode & 0x3ffffff; 4792 return dart.hashCode(element) & 0x3ffffff;
4793 } 4793 }
4794 static [_getTableEntry](table, key) { 4794 static [_getTableEntry](table, key) {
4795 return table[key]; 4795 return table[key];
4796 } 4796 }
4797 static [_setTableEntry](table, key, value) { 4797 static [_setTableEntry](table, key, value) {
4798 dart.assert(value != null); 4798 dart.assert(value != null);
4799 table[key] = value; 4799 table[key] = value;
4800 } 4800 }
4801 static [_deleteTableEntry](table, key) { 4801 static [_deleteTableEntry](table, key) {
4802 delete table[key]; 4802 delete table[key];
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
5007 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$; 5007 exports.LinkedHashMapKeyIterable$ = LinkedHashMapKeyIterable$;
5008 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable; 5008 exports.LinkedHashMapKeyIterable = LinkedHashMapKeyIterable;
5009 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$; 5009 exports.LinkedHashMapKeyIterator$ = LinkedHashMapKeyIterator$;
5010 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator; 5010 exports.LinkedHashMapKeyIterator = LinkedHashMapKeyIterator;
5011 exports.HashSetIterator$ = HashSetIterator$; 5011 exports.HashSetIterator$ = HashSetIterator$;
5012 exports.HashSetIterator = HashSetIterator; 5012 exports.HashSetIterator = HashSetIterator;
5013 exports.LinkedHashSetCell = LinkedHashSetCell; 5013 exports.LinkedHashSetCell = LinkedHashSetCell;
5014 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$; 5014 exports.LinkedHashSetIterator$ = LinkedHashSetIterator$;
5015 exports.LinkedHashSetIterator = LinkedHashSetIterator; 5015 exports.LinkedHashSetIterator = LinkedHashSetIterator;
5016 })(collection || (collection = {})); 5016 })(collection || (collection = {}));
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698