Skip to content

Commit e5ba584

Browse files
authored
Merge pull request styled-components#32 from styled-components/no-for-of
Remove for-of loops (fixes styled-components#31)
2 parents 5cba3ba + b710af6 commit e5ba584

File tree

2 files changed

+10
-12
lines changed

2 files changed

+10
-12
lines changed

src/TokenStream.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ module.exports = class TokenStream {
2323

2424
if (!node) return null;
2525

26-
/* eslint-disable no-restricted-syntax */
27-
for (const tokenDescriptor of tokenDescriptors) {
26+
for (let i = 0; i < tokenDescriptors.length; i += 1) {
27+
const tokenDescriptor = tokenDescriptors[i];
2828
const value = tokenDescriptor(node);
2929

3030
if (value !== null) {
@@ -34,7 +34,6 @@ module.exports = class TokenStream {
3434
return value;
3535
}
3636
}
37-
/* eslint-enable */
3837

3938
return null;
4039
}

src/transforms/util.js

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -45,17 +45,16 @@ module.exports.anyOrderFactory = (properties, delim = SPACE) => (tokenStream) =>
4545
while (numParsed < propertyNames.length && tokenStream.hasTokens()) {
4646
if (numParsed) tokenStream.expect(delim);
4747

48-
let didMatch = false;
49-
for (const propertyName of propertyNames) { // eslint-disable-line
50-
if (values[propertyName] === undefined && tokenStream.match(properties[propertyName].token)) {
51-
values[propertyName] = tokenStream.lastValue;
52-
didMatch = true;
53-
break;
54-
}
48+
const matchedPropertyName = propertyNames.find(propertyName => (
49+
values[propertyName] === undefined && tokenStream.match(properties[propertyName].token)
50+
));
51+
52+
if (!matchedPropertyName) {
53+
tokenStream.throw();
54+
} else {
55+
values[matchedPropertyName] = tokenStream.lastValue;
5556
}
5657

57-
if (!didMatch) tokenStream.throw();
58-
5958
numParsed += 1;
6059
}
6160

0 commit comments

Comments
 (0)