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

Unified Diff: pkg/compiler/lib/src/js_emitter/program_builder.dart

Issue 881363006: Store the aliasName of a method in the model. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: REBASE Created 5 years, 11 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
« no previous file with comments | « pkg/compiler/lib/src/js_emitter/old_emitter/container_builder.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/js_emitter/program_builder.dart
diff --git a/pkg/compiler/lib/src/js_emitter/program_builder.dart b/pkg/compiler/lib/src/js_emitter/program_builder.dart
index ca7a25b8bf973bb656d2d625b5035c37d93a4cf8..912ab3754d8d9cd0035b4a5a56a02f0fde1027b7 100644
--- a/pkg/compiler/lib/src/js_emitter/program_builder.dart
+++ b/pkg/compiler/lib/src/js_emitter/program_builder.dart
@@ -425,9 +425,13 @@ class ProgramBuilder {
bool isClosure = false;
bool isNotApplyTarget = !element.isFunction || element.isAccessor;
- final bool canBeReflected = _methodCanBeReflected(element);
- final bool canBeApplied = _methodCanBeApplied(element);
- final bool hasSuperAlias = backend.isAliasedSuperMember(element);
+ bool canBeReflected = _methodCanBeReflected(element);
+ bool needsStubs = _methodNeedsStubs(element);
+ bool canBeApplied = _methodCanBeApplied(element);
+
+ String aliasName = backend.isAliasedSuperMember(element)
+ ? namer.getNameOfAliasedSuperMember(element)
+ : null;
if (isNotApplyTarget) {
canTearOff = false;
@@ -461,7 +465,7 @@ class ProgramBuilder {
return new InstanceMethod(element, name, code,
_generateParameterStubs(element, canTearOff), callName,
needsTearOff: canTearOff, tearOffName: tearOffName,
- isClosure: isClosure, hasSuperAlias: hasSuperAlias,
+ isClosure: isClosure, aliasName: aliasName,
canBeApplied: canBeApplied, canBeReflected: canBeReflected);
}
@@ -580,15 +584,15 @@ class ProgramBuilder {
String holder = namer.globalObjectFor(element);
js.Expression code = backend.generatedCode[element];
- final bool isApplyTarget = !element.isConstructor && !element.isAccessor;
- final bool canBeApplied = _methodCanBeApplied(element);
- final bool canBeReflected = _methodCanBeReflected(element);
+ bool isApplyTarget = !element.isConstructor && !element.isAccessor;
+ bool canBeApplied = _methodCanBeApplied(element);
+ bool canBeReflected = _methodCanBeReflected(element);
- final bool needsTearOff = isApplyTarget &&
+ bool needsTearOff = isApplyTarget &&
(canBeReflected ||
universe.staticFunctionsNeedingGetter.contains(element));
- final String tearOffName =
+ String tearOffName =
needsTearOff ? namer.getStaticClosureName(element) : null;
String callName = null;
« no previous file with comments | « pkg/compiler/lib/src/js_emitter/old_emitter/container_builder.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698