| OLD | NEW |
| 1 part of dart.core; | 1 part of dart.core; |
| 2 @SupportJsExtensionMethod() @JsPeerInterface(name: 'Array') abstract class List
<E> implements Iterable<E>, EfficientLength {external factory List([int length])
; | 2 @SupportJsExtensionMethod() @JsPeerInterface(name: 'Array') abstract class List
<E> implements Iterable<E>, EfficientLength {external factory List([int length])
; |
| 3 external factory List.filled(int length, E fill); | 3 external factory List.filled(int length, E fill); |
| 4 external factory List.from(Iterable elements, { | 4 external factory List.from(Iterable elements, { |
| 5 bool growable : true} | 5 bool growable : true} |
| 6 ); | 6 ); |
| 7 factory List.generate(int length, E generator(int index), { | 7 factory List.generate(int length, E generator(int index), { |
| 8 bool growable : true} | 8 bool growable : true} |
| 9 ) { | 9 ) { |
| 10 List<E> result; | 10 List<E> result; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 } | 25 } |
| 26 Iterable<E> where(bool f(E element)) { | 26 Iterable<E> where(bool f(E element)) { |
| 27 return new IterableMixinWorkaround<E>().where(this, f); | 27 return new IterableMixinWorkaround<E>().where(this, f); |
| 28 } | 28 } |
| 29 Iterable expand(Iterable f(E element)) { | 29 Iterable expand(Iterable f(E element)) { |
| 30 return IterableMixinWorkaround.expand(this, f); | 30 return IterableMixinWorkaround.expand(this, f); |
| 31 } | 31 } |
| 32 void forEach(void f(E element)) { | 32 void forEach(void f(E element)) { |
| 33 int length = this.length; | 33 int length = this.length; |
| 34 for (int i = 0; i < length; i++) { | 34 for (int i = 0; i < length; i++) { |
| 35 f(((__x9) => DEVC$RT.cast(__x9, dynamic, E, "CompositeCast", """line 153, co
lumn 9 of dart:core/list.dart: """, __x9 is E, false))(JS('', '#[#]', this, i)))
; | 35 f(((__x8) => DEVC$RT.cast(__x8, dynamic, E, "CompositeCast", """line 153, co
lumn 9 of dart:core/list.dart: """, __x8 is E, false))(JS('', '#[#]', this, i)))
; |
| 36 if (length != this.length) { | 36 if (length != this.length) { |
| 37 throw new ConcurrentModificationError(this); | 37 throw new ConcurrentModificationError(this); |
| 38 } | 38 } |
| 39 } | 39 } |
| 40 } | 40 } |
| 41 Iterable map(f(E element)) { | 41 Iterable map(f(E element)) { |
| 42 return IterableMixinWorkaround.mapList(this, f); | 42 return IterableMixinWorkaround.mapList(this, f); |
| 43 } | 43 } |
| 44 String join([String separator = ""]) { | 44 String join([String separator = ""]) { |
| 45 var list = new List(this.length); | 45 var list = new List(this.length); |
| 46 for (int i = 0; i < this.length; i++) { | 46 for (int i = 0; i < this.length; i++) { |
| 47 list[i] = "${this[i]}"; | 47 list[i] = "${this[i]}"; |
| 48 } | 48 } |
| 49 return ((__x10) => DEVC$RT.cast(__x10, dynamic, String, "DynamicCast", """lin
e 169, column 12 of dart:core/list.dart: """, __x10 is String, true))(JS('String
', "#.join(#)", list, separator)); | 49 return ((__x9) => DEVC$RT.cast(__x9, dynamic, String, "DynamicCast", """line
169, column 12 of dart:core/list.dart: """, __x9 is String, true))(JS('String',
"#.join(#)", list, separator)); |
| 50 } | 50 } |
| 51 Iterable<E> take(int n) { | 51 Iterable<E> take(int n) { |
| 52 return new IterableMixinWorkaround<E>().takeList(this, n); | 52 return new IterableMixinWorkaround<E>().takeList(this, n); |
| 53 } | 53 } |
| 54 Iterable<E> takeWhile(bool test(E value)) { | 54 Iterable<E> takeWhile(bool test(E value)) { |
| 55 return new IterableMixinWorkaround<E>().takeWhile(this, test); | 55 return new IterableMixinWorkaround<E>().takeWhile(this, test); |
| 56 } | 56 } |
| 57 Iterable<E> skip(int n) { | 57 Iterable<E> skip(int n) { |
| 58 return new IterableMixinWorkaround<E>().skipList(this, n); | 58 return new IterableMixinWorkaround<E>().skipList(this, n); |
| 59 } | 59 } |
| 60 Iterable<E> skipWhile(bool test(E value)) { | 60 Iterable<E> skipWhile(bool test(E value)) { |
| 61 return new IterableMixinWorkaround<E>().skipWhile(this, test); | 61 return new IterableMixinWorkaround<E>().skipWhile(this, test); |
| 62 } | 62 } |
| 63 E reduce(E combine(E value, E element)) { | 63 E reduce(E combine(E value, E element)) { |
| 64 return ((__x11) => DEVC$RT.cast(__x11, dynamic, E, "CompositeCast", """line 18
9, column 12 of dart:core/list.dart: """, __x11 is E, false))(IterableMixinWorka
round.reduce(this, combine)); | 64 return ((__x10) => DEVC$RT.cast(__x10, dynamic, E, "CompositeCast", """line 18
9, column 12 of dart:core/list.dart: """, __x10 is E, false))(IterableMixinWorka
round.reduce(this, combine)); |
| 65 } | 65 } |
| 66 fold(initialValue, combine(previousValue, E element)) { | 66 fold(initialValue, combine(previousValue, E element)) { |
| 67 return IterableMixinWorkaround.fold(this, initialValue, combine); | 67 return IterableMixinWorkaround.fold(this, initialValue, combine); |
| 68 } | 68 } |
| 69 E firstWhere(bool test(E value), { | 69 E firstWhere(bool test(E value), { |
| 70 E orElse()} | 70 E orElse()} |
| 71 ) { | 71 ) { |
| 72 return ((__x12) => DEVC$RT.cast(__x12, dynamic, E, "CompositeCast", """line 19
7, column 12 of dart:core/list.dart: """, __x12 is E, false))(IterableMixinWorka
round.firstWhere(this, test, orElse)); | 72 return ((__x11) => DEVC$RT.cast(__x11, dynamic, E, "CompositeCast", """line 19
7, column 12 of dart:core/list.dart: """, __x11 is E, false))(IterableMixinWorka
round.firstWhere(this, test, orElse)); |
| 73 } | 73 } |
| 74 E lastWhere(bool test(E value), { | 74 E lastWhere(bool test(E value), { |
| 75 E orElse()} | 75 E orElse()} |
| 76 ) { | 76 ) { |
| 77 return ((__x13) => DEVC$RT.cast(__x13, dynamic, E, "CompositeCast", """line 20
1, column 12 of dart:core/list.dart: """, __x13 is E, false))(IterableMixinWorka
round.lastWhereList(this, test, orElse)); | 77 return ((__x12) => DEVC$RT.cast(__x12, dynamic, E, "CompositeCast", """line 20
1, column 12 of dart:core/list.dart: """, __x12 is E, false))(IterableMixinWorka
round.lastWhereList(this, test, orElse)); |
| 78 } | 78 } |
| 79 E singleWhere(bool test(E value)) { | 79 E singleWhere(bool test(E value)) { |
| 80 return ((__x14) => DEVC$RT.cast(__x14, dynamic, E, "CompositeCast", """line 20
5, column 12 of dart:core/list.dart: """, __x14 is E, false))(IterableMixinWorka
round.singleWhere(this, test)); | 80 return ((__x13) => DEVC$RT.cast(__x13, dynamic, E, "CompositeCast", """line 20
5, column 12 of dart:core/list.dart: """, __x13 is E, false))(IterableMixinWorka
round.singleWhere(this, test)); |
| 81 } | 81 } |
| 82 E elementAt(int index) { | 82 E elementAt(int index) { |
| 83 return this[index]; | 83 return this[index]; |
| 84 } | 84 } |
| 85 E get first { | 85 E get first { |
| 86 if (length > 0) return this[0]; | 86 if (length > 0) return this[0]; |
| 87 throw new StateError("No elements"); | 87 throw new StateError("No elements"); |
| 88 } | 88 } |
| 89 E get last { | 89 E get last { |
| 90 if (length > 0) return this[length - 1]; | 90 if (length > 0) return this[length - 1]; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 115 ) { | 115 ) { |
| 116 if (growable) { | 116 if (growable) { |
| 117 return new JSArray<E>.markGrowable(JS('', '#.slice()', this)); | 117 return new JSArray<E>.markGrowable(JS('', '#.slice()', this)); |
| 118 } | 118 } |
| 119 else { | 119 else { |
| 120 return new JSArray<E>.markFixed(JS('', '#.slice()', this)); | 120 return new JSArray<E>.markFixed(JS('', '#.slice()', this)); |
| 121 } | 121 } |
| 122 } | 122 } |
| 123 Set<E> toSet() => new Set<E>.from(this); | 123 Set<E> toSet() => new Set<E>.from(this); |
| 124 Iterator<E> get iterator => new ListIterator<E>(this); | 124 Iterator<E> get iterator => new ListIterator<E>(this); |
| 125 int get hashCode => ((__x15) => DEVC$RT.cast(__x15, dynamic, int, "DynamicCast"
, """line 262, column 23 of dart:core/list.dart: """, __x15 is int, true))(Primi
tives.objectHashCode(this)); | 125 int get hashCode => ((__x14) => DEVC$RT.cast(__x14, dynamic, int, "DynamicCast"
, """line 262, column 23 of dart:core/list.dart: """, __x14 is int, true))(Primi
tives.objectHashCode(this)); |
| 126 E operator [](int index) { | 126 E operator [](int index) { |
| 127 if (index is! int) throw new ArgumentError(index); | 127 if (index is! int) throw new ArgumentError(index); |
| 128 if (index >= length || index < 0) throw new RangeError.value(index); | 128 if (index >= length || index < 0) throw new RangeError.value(index); |
| 129 return ((__x16) => DEVC$RT.cast(__x16, dynamic, E, "CompositeCast", """line 2
73, column 12 of dart:core/list.dart: """, __x16 is E, false))(JS('var', '#[#]',
this, index)); | 129 return ((__x15) => DEVC$RT.cast(__x15, dynamic, E, "CompositeCast", """line 2
73, column 12 of dart:core/list.dart: """, __x15 is E, false))(JS('var', '#[#]',
this, index)); |
| 130 } | 130 } |
| 131 void operator []=(int index, E value) { | 131 void operator []=(int index, E value) { |
| 132 checkMutable('indexed set'); | 132 checkMutable('indexed set'); |
| 133 if (index is! int) throw new ArgumentError(index); | 133 if (index is! int) throw new ArgumentError(index); |
| 134 if (index >= length || index < 0) throw new RangeError.value(index); | 134 if (index >= length || index < 0) throw new RangeError.value(index); |
| 135 JS('void', r'#[#] = #', this, index, value); | 135 JS('void', r'#[#] = #', this, index, value); |
| 136 } | 136 } |
| 137 int get length => ((__x17) => DEVC$RT.cast(__x17, dynamic, int, "DynamicCast",
"""line 292, column 21 of dart:core/list.dart: """, __x17 is int, true))(JS('JSU
Int32', r'#.length', this)); | 137 int get length => ((__x16) => DEVC$RT.cast(__x16, dynamic, int, "DynamicCast",
"""line 292, column 21 of dart:core/list.dart: """, __x16 is int, true))(JS('JSU
Int32', r'#.length', this)); |
| 138 void set length(int newLength) { | 138 void set length(int newLength) { |
| 139 if (newLength is! int) throw new ArgumentError(newLength); | 139 if (newLength is! int) throw new ArgumentError(newLength); |
| 140 if (newLength < 0) throw new RangeError.value(newLength); | 140 if (newLength < 0) throw new RangeError.value(newLength); |
| 141 checkGrowable('set length'); | 141 checkGrowable('set length'); |
| 142 JS('void', r'#.length = #', this, newLength); | 142 JS('void', r'#.length = #', this, newLength); |
| 143 } | 143 } |
| 144 void add(E value) { | 144 void add(E value) { |
| 145 checkGrowable('add'); | 145 checkGrowable('add'); |
| 146 JS('void', r'#.push(#)', this, value); | 146 JS('void', r'#.push(#)', this, value); |
| 147 } | 147 } |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 191 } | 191 } |
| 192 } | 192 } |
| 193 return false; | 193 return false; |
| 194 } | 194 } |
| 195 E removeAt(int index) { | 195 E removeAt(int index) { |
| 196 if (index is! int) throw new ArgumentError(index); | 196 if (index is! int) throw new ArgumentError(index); |
| 197 if (index < 0 || index >= length) { | 197 if (index < 0 || index >= length) { |
| 198 throw new RangeError.value(index); | 198 throw new RangeError.value(index); |
| 199 } | 199 } |
| 200 checkGrowable('removeAt'); | 200 checkGrowable('removeAt'); |
| 201 return ((__x18) => DEVC$RT.cast(__x18, dynamic, E, "CompositeCast", """line 5
24, column 12 of dart:core/list.dart: """, __x18 is E, false))(JS('var', r'#.spl
ice(#, 1)[0]', this, index)); | 201 return ((__x17) => DEVC$RT.cast(__x17, dynamic, E, "CompositeCast", """line 5
24, column 12 of dart:core/list.dart: """, __x17 is E, false))(JS('var', r'#.spl
ice(#, 1)[0]', this, index)); |
| 202 } | 202 } |
| 203 E removeLast() { | 203 E removeLast() { |
| 204 checkGrowable('removeLast'); | 204 checkGrowable('removeLast'); |
| 205 if (length == 0) throw new RangeError.value(-1); | 205 if (length == 0) throw new RangeError.value(-1); |
| 206 return ((__x19) => DEVC$RT.cast(__x19, dynamic, E, "CompositeCast", """line 5
35, column 12 of dart:core/list.dart: """, __x19 is E, false))(JS('var', r'#.pop
()', this)); | 206 return ((__x18) => DEVC$RT.cast(__x18, dynamic, E, "CompositeCast", """line 5
35, column 12 of dart:core/list.dart: """, __x18 is E, false))(JS('var', r'#.pop
()', this)); |
| 207 } | 207 } |
| 208 void removeWhere(bool test(E element)) { | 208 void removeWhere(bool test(E element)) { |
| 209 IterableMixinWorkaround.removeWhereList(this, test); | 209 IterableMixinWorkaround.removeWhereList(this, test); |
| 210 } | 210 } |
| 211 void retainWhere(bool test(E element)) { | 211 void retainWhere(bool test(E element)) { |
| 212 IterableMixinWorkaround.removeWhereList(this, (E element) => !test(element)); | 212 IterableMixinWorkaround.removeWhereList(this, (E element) => !test(element)); |
| 213 } | 213 } |
| 214 List<E> sublist(int start, [int end]) { | 214 List<E> sublist(int start, [int end]) { |
| 215 checkNull(start); | 215 checkNull(start); |
| 216 if (start is! int) throw new ArgumentError(start); | 216 if (start is! int) throw new ArgumentError(start); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 IterableMixinWorkaround.fillRangeList(this, start, end, fillValue); | 253 IterableMixinWorkaround.fillRangeList(this, start, end, fillValue); |
| 254 } | 254 } |
| 255 void replaceRange(int start, int end, Iterable<E> replacement) { | 255 void replaceRange(int start, int end, Iterable<E> replacement) { |
| 256 checkGrowable('removeRange'); | 256 checkGrowable('removeRange'); |
| 257 IterableMixinWorkaround.replaceRangeList(this, start, end, replacement); | 257 IterableMixinWorkaround.replaceRangeList(this, start, end, replacement); |
| 258 } | 258 } |
| 259 Map<int, E> asMap() { | 259 Map<int, E> asMap() { |
| 260 return new IterableMixinWorkaround<E>().asMapList(this); | 260 return new IterableMixinWorkaround<E>().asMapList(this); |
| 261 } | 261 } |
| 262 } | 262 } |
| OLD | NEW |