Skip to content

Commit ab42664

Browse files
committed
Don't use the for..of syntax in AtScript.
1 parent 15afb80 commit ab42664

File tree

2 files changed

+19
-10
lines changed

2 files changed

+19
-10
lines changed

modules/angular2/src/facade/collection.es6

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,9 @@ export class ListWrapper {
9393
static map(array, fn) {
9494
return array.map(fn);
9595
}
96-
static forEach(array, fn) {
97-
for(var p of array) {
98-
fn(p);
96+
static forEach(array:List, fn:Function) {
97+
for (var i = 0; i < array.length; i++) {
98+
fn(array[i]);
9999
}
100100
}
101101
static push(array, el) {
@@ -198,8 +198,16 @@ export function isListLikeIterable(obj):boolean {
198198
}
199199

200200
export function iterateListLike(obj, fn:Function) {
201-
for (var item of obj) {
202-
fn(item);
201+
if (ListWrapper.isList(obj)) {
202+
for (var i = 0; i < obj.length; i++) {
203+
fn(obj[i]);
204+
}
205+
} else {
206+
var iterator = obj[Symbol.iterator]();
207+
var item;
208+
while (!((item = iterator.next()).done)) {
209+
fn(item.value);
210+
}
203211
}
204212
}
205213

modules/rtts_assert/src/rtts_assert.es6

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -259,8 +259,8 @@ var number = type.number = define('number', function(value) {
259259
function arrayOf(...types) {
260260
return assert.define('array of ' + types.map(prettyPrint).join('/'), function(value) {
261261
if (assert(value).is(Array)) {
262-
for (var item of value) {
263-
assert(item).is(...types);
262+
for (var i = 0; i < value.length; i++) {
263+
assert(value[i]).is(...types);
264264
}
265265
}
266266
});
@@ -270,7 +270,8 @@ function structure(definition) {
270270
var properties = Object.keys(definition);
271271
return assert.define('object with properties ' + properties.join(', '), function(value) {
272272
if (assert(value).is(Object)) {
273-
for (var property of properties) {
273+
for (var i = 0; i < properties.length; i++) {
274+
var property = properties[i];
274275
assert(value[property]).is(definition[property]);
275276
}
276277
}
@@ -318,8 +319,8 @@ function assert(value) {
318319
// var errors = []
319320
var allErrors = [];
320321
var errors;
321-
322-
for (var type of types) {
322+
for (var i = 0; i < types.length; i++) {
323+
var type = types[i];
323324
errors = [];
324325

325326
if (isType(value, type, errors)) {

0 commit comments

Comments
 (0)