OLD | NEW |
1 dart_library.library('dart/_internal', null, /* Imports */[ | 1 dart_library.library('dart/_internal', null, /* Imports */[ |
2 'dart/_runtime', | 2 'dart/_runtime', |
3 'dart/core', | 3 'dart/core', |
4 'dart/collection' | 4 'dart/collection' |
5 ], /* Lazy imports */[ | 5 ], /* Lazy imports */[ |
6 'dart/math', | 6 'dart/math', |
7 'dart/_interceptors', | 7 'dart/_interceptors', |
8 'dart/_js_primitives' | 8 'dart/_js_primitives' |
9 ], function(exports, dart, core, collection, math, _interceptors, _js_primitives
) { | 9 ], function(exports, dart, core, collection, math, _interceptors, _js_primitives
) { |
10 'use strict'; | 10 'use strict'; |
(...skipping 1077 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1088 let BidirectionalIterator = BidirectionalIterator$(); | 1088 let BidirectionalIterator = BidirectionalIterator$(); |
1089 const IterableMixinWorkaround$ = dart.generic(function(T) { | 1089 const IterableMixinWorkaround$ = dart.generic(function(T) { |
1090 class IterableMixinWorkaround extends core.Object { | 1090 class IterableMixinWorkaround extends core.Object { |
1091 static contains(iterable, element) { | 1091 static contains(iterable, element) { |
1092 for (let e of iterable) { | 1092 for (let e of iterable) { |
1093 if (dart.equals(e, element)) return true; | 1093 if (dart.equals(e, element)) return true; |
1094 } | 1094 } |
1095 return false; | 1095 return false; |
1096 } | 1096 } |
1097 static forEach(iterable, f) { | 1097 static forEach(iterable, f) { |
1098 dart.as(f, dart.functionType(dart.void, [dart.dynamic])); | |
1099 for (let e of iterable) { | 1098 for (let e of iterable) { |
1100 f(e); | 1099 f(e); |
1101 } | 1100 } |
1102 } | 1101 } |
1103 static any(iterable, f) { | 1102 static any(iterable, f) { |
1104 dart.as(f, dart.functionType(core.bool, [dart.dynamic])); | |
1105 for (let e of iterable) { | 1103 for (let e of iterable) { |
1106 if (dart.notNull(f(e))) return true; | 1104 if (dart.notNull(f(e))) return true; |
1107 } | 1105 } |
1108 return false; | 1106 return false; |
1109 } | 1107 } |
1110 static every(iterable, f) { | 1108 static every(iterable, f) { |
1111 dart.as(f, dart.functionType(core.bool, [dart.dynamic])); | |
1112 for (let e of iterable) { | 1109 for (let e of iterable) { |
1113 if (!dart.notNull(f(e))) return false; | 1110 if (!dart.notNull(f(e))) return false; |
1114 } | 1111 } |
1115 return true; | 1112 return true; |
1116 } | 1113 } |
1117 static reduce(iterable, combine) { | 1114 static reduce(iterable, combine) { |
1118 dart.as(combine, dart.functionType(dart.dynamic, [dart.dynamic, dart.dyn
amic])); | |
1119 let iterator = iterable[dartx.iterator]; | 1115 let iterator = iterable[dartx.iterator]; |
1120 if (!dart.notNull(iterator.moveNext())) dart.throw(IterableElementError.
noElement()); | 1116 if (!dart.notNull(iterator.moveNext())) dart.throw(IterableElementError.
noElement()); |
1121 let value = iterator.current; | 1117 let value = iterator.current; |
1122 while (dart.notNull(iterator.moveNext())) { | 1118 while (dart.notNull(iterator.moveNext())) { |
1123 value = combine(value, iterator.current); | 1119 value = combine(value, iterator.current); |
1124 } | 1120 } |
1125 return value; | 1121 return value; |
1126 } | 1122 } |
1127 static fold(iterable, initialValue, combine) { | 1123 static fold(iterable, initialValue, combine) { |
1128 dart.as(combine, dart.functionType(dart.dynamic, [dart.dynamic, dart.dyn
amic])); | |
1129 for (let element of iterable) { | 1124 for (let element of iterable) { |
1130 initialValue = combine(initialValue, element); | 1125 initialValue = combine(initialValue, element); |
1131 } | 1126 } |
1132 return initialValue; | 1127 return initialValue; |
1133 } | 1128 } |
1134 static removeWhereList(list, test) { | 1129 static removeWhereList(list, test) { |
1135 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | |
1136 let retained = dart.list([], dart.dynamic); | 1130 let retained = dart.list([], dart.dynamic); |
1137 let length = list[dartx.length]; | 1131 let length = list[dartx.length]; |
1138 for (let i = 0; i < dart.notNull(length); i++) { | 1132 for (let i = 0; i < dart.notNull(length); i++) { |
1139 let element = list[dartx.get](i); | 1133 let element = list[dartx.get](i); |
1140 if (!dart.notNull(test(element))) { | 1134 if (!dart.notNull(test(element))) { |
1141 retained[dartx.add](element); | 1135 retained[dartx.add](element); |
1142 } | 1136 } |
1143 if (length != list[dartx.length]) { | 1137 if (length != list[dartx.length]) { |
1144 dart.throw(new core.ConcurrentModificationError(list)); | 1138 dart.throw(new core.ConcurrentModificationError(list)); |
1145 } | 1139 } |
(...skipping 26 matching lines...) Expand all Loading... |
1172 return result; | 1166 return result; |
1173 } | 1167 } |
1174 static single(iterable) { | 1168 static single(iterable) { |
1175 let it = iterable[dartx.iterator]; | 1169 let it = iterable[dartx.iterator]; |
1176 if (!dart.notNull(it.moveNext())) dart.throw(IterableElementError.noElem
ent()); | 1170 if (!dart.notNull(it.moveNext())) dart.throw(IterableElementError.noElem
ent()); |
1177 let result = it.current; | 1171 let result = it.current; |
1178 if (dart.notNull(it.moveNext())) dart.throw(IterableElementError.tooMany
()); | 1172 if (dart.notNull(it.moveNext())) dart.throw(IterableElementError.tooMany
()); |
1179 return result; | 1173 return result; |
1180 } | 1174 } |
1181 static firstWhere(iterable, test, orElse) { | 1175 static firstWhere(iterable, test, orElse) { |
1182 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | |
1183 dart.as(orElse, dart.functionType(dart.dynamic, [])); | |
1184 for (let element of iterable) { | 1176 for (let element of iterable) { |
1185 if (dart.notNull(test(element))) return element; | 1177 if (dart.notNull(test(element))) return element; |
1186 } | 1178 } |
1187 if (orElse != null) return orElse(); | 1179 if (orElse != null) return orElse(); |
1188 dart.throw(IterableElementError.noElement()); | 1180 dart.throw(IterableElementError.noElement()); |
1189 } | 1181 } |
1190 static lastWhere(iterable, test, orElse) { | 1182 static lastWhere(iterable, test, orElse) { |
1191 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | |
1192 dart.as(orElse, dart.functionType(dart.dynamic, [])); | |
1193 let result = null; | 1183 let result = null; |
1194 let foundMatching = false; | 1184 let foundMatching = false; |
1195 for (let element of iterable) { | 1185 for (let element of iterable) { |
1196 if (dart.notNull(test(element))) { | 1186 if (dart.notNull(test(element))) { |
1197 result = element; | 1187 result = element; |
1198 foundMatching = true; | 1188 foundMatching = true; |
1199 } | 1189 } |
1200 } | 1190 } |
1201 if (foundMatching) return result; | 1191 if (foundMatching) return result; |
1202 if (orElse != null) return orElse(); | 1192 if (orElse != null) return orElse(); |
1203 dart.throw(IterableElementError.noElement()); | 1193 dart.throw(IterableElementError.noElement()); |
1204 } | 1194 } |
1205 static lastWhereList(list, test, orElse) { | 1195 static lastWhereList(list, test, orElse) { |
1206 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | |
1207 dart.as(orElse, dart.functionType(dart.dynamic, [])); | |
1208 for (let i = dart.notNull(list[dartx.length]) - 1; i >= 0; i--) { | 1196 for (let i = dart.notNull(list[dartx.length]) - 1; i >= 0; i--) { |
1209 let element = list[dartx.get](i); | 1197 let element = list[dartx.get](i); |
1210 if (dart.notNull(test(element))) return element; | 1198 if (dart.notNull(test(element))) return element; |
1211 } | 1199 } |
1212 if (orElse != null) return orElse(); | 1200 if (orElse != null) return orElse(); |
1213 dart.throw(IterableElementError.noElement()); | 1201 dart.throw(IterableElementError.noElement()); |
1214 } | 1202 } |
1215 static singleWhere(iterable, test) { | 1203 static singleWhere(iterable, test) { |
1216 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | |
1217 let result = null; | 1204 let result = null; |
1218 let foundMatching = false; | 1205 let foundMatching = false; |
1219 for (let element of iterable) { | 1206 for (let element of iterable) { |
1220 if (dart.notNull(test(element))) { | 1207 if (dart.notNull(test(element))) { |
1221 if (foundMatching) { | 1208 if (foundMatching) { |
1222 dart.throw(IterableElementError.tooMany()); | 1209 dart.throw(IterableElementError.tooMany()); |
1223 } | 1210 } |
1224 result = element; | 1211 result = element; |
1225 foundMatching = true; | 1212 foundMatching = true; |
1226 } | 1213 } |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1261 } | 1248 } |
1262 } | 1249 } |
1263 return dart.toString(buffer); | 1250 return dart.toString(buffer); |
1264 } | 1251 } |
1265 where(iterable, f) { | 1252 where(iterable, f) { |
1266 dart.as(iterable, core.Iterable$(T)); | 1253 dart.as(iterable, core.Iterable$(T)); |
1267 dart.as(f, dart.functionType(core.bool, [T])); | 1254 dart.as(f, dart.functionType(core.bool, [T])); |
1268 return new (WhereIterable$(T))(iterable, f); | 1255 return new (WhereIterable$(T))(iterable, f); |
1269 } | 1256 } |
1270 static map(iterable, f) { | 1257 static map(iterable, f) { |
1271 dart.as(f, dart.functionType(dart.dynamic, [dart.dynamic])); | |
1272 return MappedIterable.new(iterable, f); | 1258 return MappedIterable.new(iterable, f); |
1273 } | 1259 } |
1274 static mapList(list, f) { | 1260 static mapList(list, f) { |
1275 dart.as(f, dart.functionType(dart.dynamic, [dart.dynamic])); | |
1276 return new MappedListIterable(list, f); | 1261 return new MappedListIterable(list, f); |
1277 } | 1262 } |
1278 static expand(iterable, f) { | 1263 static expand(iterable, f) { |
1279 dart.as(f, dart.functionType(core.Iterable, [dart.dynamic])); | |
1280 return new ExpandIterable(iterable, f); | 1264 return new ExpandIterable(iterable, f); |
1281 } | 1265 } |
1282 takeList(list, n) { | 1266 takeList(list, n) { |
1283 return new (SubListIterable$(T))(dart.as(list, core.Iterable$(T)), 0, n)
; | 1267 return new (SubListIterable$(T))(dart.as(list, core.Iterable$(T)), 0, n)
; |
1284 } | 1268 } |
1285 takeWhile(iterable, test) { | 1269 takeWhile(iterable, test) { |
1286 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | 1270 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); |
1287 return new (TakeWhileIterable$(T))(dart.as(iterable, core.Iterable$(T)),
dart.as(test, __CastType2)); | 1271 return new (TakeWhileIterable$(T))(dart.as(iterable, core.Iterable$(T)),
dart.as(test, __CastType2)); |
1288 } | 1272 } |
1289 skipList(list, n) { | 1273 skipList(list, n) { |
1290 return new (SubListIterable$(T))(dart.as(list, core.Iterable$(T)), n, nu
ll); | 1274 return new (SubListIterable$(T))(dart.as(list, core.Iterable$(T)), n, nu
ll); |
1291 } | 1275 } |
1292 skipWhile(iterable, test) { | 1276 skipWhile(iterable, test) { |
1293 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); | 1277 dart.as(test, dart.functionType(core.bool, [dart.dynamic])); |
1294 return new (SkipWhileIterable$(T))(dart.as(iterable, core.Iterable$(T)),
dart.as(test, dart.functionType(core.bool, [T]))); | 1278 return new (SkipWhileIterable$(T))(dart.as(iterable, core.Iterable$(T)),
dart.as(test, dart.functionType(core.bool, [T]))); |
1295 } | 1279 } |
1296 reversedList(list) { | 1280 reversedList(list) { |
1297 return new (ReversedListIterable$(T))(dart.as(list, core.Iterable$(T))); | 1281 return new (ReversedListIterable$(T))(dart.as(list, core.Iterable$(T))); |
1298 } | 1282 } |
1299 static sortList(list, compare) { | 1283 static sortList(list, compare) { |
1300 dart.as(compare, dart.functionType(core.int, [dart.dynamic, dart.dynamic
])); | |
1301 if (compare == null) compare = core.Comparable.compare; | 1284 if (compare == null) compare = core.Comparable.compare; |
1302 Sort.sort(list, compare); | 1285 Sort.sort(list, compare); |
1303 } | 1286 } |
1304 static shuffleList(list, random) { | 1287 static shuffleList(list, random) { |
1305 if (random == null) random = math.Random.new(); | 1288 if (random == null) random = math.Random.new(); |
1306 let length = list[dartx.length]; | 1289 let length = list[dartx.length]; |
1307 while (dart.notNull(length) > 1) { | 1290 while (dart.notNull(length) > 1) { |
1308 let pos = random.nextInt(length); | 1291 let pos = random.nextInt(length); |
1309 length = dart.notNull(length) - 1; | 1292 length = dart.notNull(length) - 1; |
1310 let tmp = list[dartx.get](length); | 1293 let tmp = list[dartx.get](length); |
(...skipping 1050 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2361 exports.ReversedListIterable = ReversedListIterable; | 2344 exports.ReversedListIterable = ReversedListIterable; |
2362 exports.UnmodifiableListError = UnmodifiableListError; | 2345 exports.UnmodifiableListError = UnmodifiableListError; |
2363 exports.NonGrowableListError = NonGrowableListError; | 2346 exports.NonGrowableListError = NonGrowableListError; |
2364 exports.makeListFixedLength = makeListFixedLength; | 2347 exports.makeListFixedLength = makeListFixedLength; |
2365 exports.Lists = Lists; | 2348 exports.Lists = Lists; |
2366 exports.printToConsole = printToConsole; | 2349 exports.printToConsole = printToConsole; |
2367 exports.Sort = Sort; | 2350 exports.Sort = Sort; |
2368 exports.Symbol = Symbol; | 2351 exports.Symbol = Symbol; |
2369 exports.POWERS_OF_TEN = POWERS_OF_TEN; | 2352 exports.POWERS_OF_TEN = POWERS_OF_TEN; |
2370 }); | 2353 }); |
OLD | NEW |