Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(522)

Unified Diff: lib/src/js/builder.dart

Issue 1016003003: sort classes in dependency order, or load lazily if needed, fixes #78 (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: lib/src/js/builder.dart
diff --git a/lib/src/js/builder.dart b/lib/src/js/builder.dart
index dfedaa2c461a1a274cbe4277dca9fa6228b75e9d..239bb91a0871aaf8b8eae2937551ae6ec3a66326 100644
--- a/lib/src/js/builder.dart
+++ b/lib/src/js/builder.dart
@@ -1481,13 +1481,16 @@ class MiniJsParser {
interpolatedValues.add(member);
return member;
}
- name = parseInterpolatedExpression();
+ var interpolated = new InterpolatedExpression(parseHash());
+ interpolatedValues.add(interpolated);
+ name = interpolated;
} else {
name = parsePropertyName();
}
// Allow get or set to be followed by another property name.
- if (lastCategory == ALPHA && name is PropertyName) {
+ if (name is PropertyName &&
+ (lastCategory == ALPHA || lastCategory == HASH)) {
PropertyName p = name;
isGetter = p.name == 'get';
isSetter = p.name == 'set';
@@ -1520,16 +1523,12 @@ class MiniJsParser {
expectCategory(RSQUARE);
return expr;
} else if (acceptCategory(HASH)) {
- return parseInterpolatedExpression();
+ var member = new InterpolatedPropertyName(parseHash());
+ interpolatedValues.add(member);
+ return member;
} else {
error('Expected property name');
return null;
}
}
-
- InterpolatedExpression parseInterpolatedExpression() {
- var interpolated = new InterpolatedExpression(parseHash());
- interpolatedValues.add(interpolated);
- return interpolated;
- }
}

Powered by Google App Engine
This is Rietveld 408576698