OLD | NEW |
1 part of dart.collection; | 1 part of dart.collection; |
2 abstract class SetMixin<E> implements Set<E> {bool add(E element); | 2 abstract class SetMixin<E> implements Set<E> {bool add(E element); |
3 bool contains(Object element); | 3 bool contains(Object element); |
4 E lookup(E element); | 4 E lookup(E element); |
5 bool remove(Object element); | 5 bool remove(Object element); |
6 Iterator<E> get iterator; | 6 Iterator<E> get iterator; |
7 Set<E> toSet(); | 7 Set<E> toSet(); |
8 int get length; | 8 int get length; |
9 bool get isEmpty => length == 0; | 9 bool get isEmpty => length == 0; |
10 bool get isNotEmpty => length != 0; | 10 bool get isNotEmpty => length != 0; |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 List<E> result = growable ? (new List<E>()..length = length) : new List<E>(len
gth); | 67 List<E> result = growable ? (new List<E>()..length = length) : new List<E>(len
gth); |
68 int i = 0; | 68 int i = 0; |
69 for (E element in this) result[i++] = element; | 69 for (E element in this) result[i++] = element; |
70 return result; | 70 return result; |
71 } | 71 } |
72 Iterable map(f(E element)) => new EfficientLengthMappedIterable<E, dynamic>(thi
s, f); | 72 Iterable map(f(E element)) => new EfficientLengthMappedIterable<E, dynamic>(thi
s, f); |
73 E get single { | 73 E get single { |
74 if (length > 1) throw IterableElementError.tooMany(); | 74 if (length > 1) throw IterableElementError.tooMany(); |
75 Iterator it = iterator; | 75 Iterator it = iterator; |
76 if (!it.moveNext()) throw IterableElementError.noElement(); | 76 if (!it.moveNext()) throw IterableElementError.noElement(); |
77 E result = DEVC$RT.cast(it.current, dynamic, E, "CastGeneral", """line 130, c
olumn 16 of dart:collection/set.dart: """, it.current is E, false); | 77 E result = DEVC$RT.cast(it.current, dynamic, E, "CompositeCast", """line 130,
column 16 of dart:collection/set.dart: """, it.current is E, false); |
78 return result; | 78 return result; |
79 } | 79 } |
80 String toString() => IterableBase.iterableToFullString(this, '{', '}'); | 80 String toString() => IterableBase.iterableToFullString(this, '{', '}'); |
81 Iterable<E> where(bool f(E element)) => new WhereIterable<E>(this, f); | 81 Iterable<E> where(bool f(E element)) => new WhereIterable<E>(this, f); |
82 Iterable expand(Iterable f(E element)) => new ExpandIterable<E, dynamic>(this,
f); | 82 Iterable expand(Iterable f(E element)) => new ExpandIterable<E, dynamic>(this,
f); |
83 void forEach(void f(E element)) { | 83 void forEach(void f(E element)) { |
84 for (E element in this) f(element); | 84 for (E element in this) f(element); |
85 } | 85 } |
86 E reduce(E combine(E value, E element)) { | 86 E reduce(E combine(E value, E element)) { |
87 Iterator<E> iterator = this.iterator; | 87 Iterator<E> iterator = this.iterator; |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 return new SkipIterable<E>(this, n); | 139 return new SkipIterable<E>(this, n); |
140 } | 140 } |
141 Iterable<E> skipWhile(bool test(E value)) { | 141 Iterable<E> skipWhile(bool test(E value)) { |
142 return new SkipWhileIterable<E>(this, test); | 142 return new SkipWhileIterable<E>(this, test); |
143 } | 143 } |
144 E get first { | 144 E get first { |
145 Iterator it = iterator; | 145 Iterator it = iterator; |
146 if (!it.moveNext()) { | 146 if (!it.moveNext()) { |
147 throw IterableElementError.noElement(); | 147 throw IterableElementError.noElement(); |
148 } | 148 } |
149 return DEVC$RT.cast(it.current, dynamic, E, "CastGeneral", """line 220, colum
n 12 of dart:collection/set.dart: """, it.current is E, false); | 149 return DEVC$RT.cast(it.current, dynamic, E, "CompositeCast", """line 220, col
umn 12 of dart:collection/set.dart: """, it.current is E, false); |
150 } | 150 } |
151 E get last { | 151 E get last { |
152 Iterator it = iterator; | 152 Iterator it = iterator; |
153 if (!it.moveNext()) { | 153 if (!it.moveNext()) { |
154 throw IterableElementError.noElement(); | 154 throw IterableElementError.noElement(); |
155 } | 155 } |
156 E result; | 156 E result; |
157 do { | 157 do { |
158 result = DEVC$RT.cast(it.current, dynamic, E, "CastGeneral", """line 230, co
lumn 16 of dart:collection/set.dart: """, it.current is E, false); | 158 result = DEVC$RT.cast(it.current, dynamic, E, "CompositeCast", """line 230,
column 16 of dart:collection/set.dart: """, it.current is E, false); |
159 } | 159 } |
160 while (it.moveNext()); return result; | 160 while (it.moveNext()); return result; |
161 } | 161 } |
162 E firstWhere(bool test(E value), { | 162 E firstWhere(bool test(E value), { |
163 E orElse()} | 163 E orElse()} |
164 ) { | 164 ) { |
165 for (E element in this) { | 165 for (E element in this) { |
166 if (test(element)) return element; | 166 if (test(element)) return element; |
167 } | 167 } |
168 if (orElse != null) return orElse(); | 168 if (orElse != null) return orElse(); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 int elementIndex = 0; | 204 int elementIndex = 0; |
205 for (E element in this) { | 205 for (E element in this) { |
206 if (index == elementIndex) return element; | 206 if (index == elementIndex) return element; |
207 elementIndex++; | 207 elementIndex++; |
208 } | 208 } |
209 throw new RangeError.index(index, this, "index", null, elementIndex); | 209 throw new RangeError.index(index, this, "index", null, elementIndex); |
210 } | 210 } |
211 } | 211 } |
212 abstract class SetBase<E> extends SetMixin<E> {static String setToString(Set se
t) => IterableBase.iterableToFullString(set, '{', '}'); | 212 abstract class SetBase<E> extends SetMixin<E> {static String setToString(Set se
t) => IterableBase.iterableToFullString(set, '{', '}'); |
213 } | 213 } |
OLD | NEW |