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

Unified Diff: pkg/compiler/lib/src/closure.dart

Issue 2924803002: Avoid using FunctionSignature in builder_kernel (Closed)
Patch Set: Created 3 years, 6 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 | « no previous file | pkg/compiler/lib/src/kernel/element_map.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/closure.dart
diff --git a/pkg/compiler/lib/src/closure.dart b/pkg/compiler/lib/src/closure.dart
index 6dacea63154b7b81b3c29e4ce148533d4e327ae1..19c2e101fca157f6799192fea41c072cd13ba3e7 100644
--- a/pkg/compiler/lib/src/closure.dart
+++ b/pkg/compiler/lib/src/closure.dart
@@ -10,12 +10,13 @@ import 'common/tasks.dart' show CompilerTask;
import 'common.dart';
import 'compiler.dart' show Compiler;
import 'constants/expressions.dart';
-import 'elements/resolution_types.dart';
import 'elements/elements.dart';
import 'elements/entities.dart';
import 'elements/entity_utils.dart' as utils;
import 'elements/modelx.dart'
show BaseFunctionElementX, ClassElementX, ElementX;
+import 'elements/resolution_types.dart';
+import 'elements/types.dart';
import 'elements/visitor.dart' show ElementVisitor;
import 'js_backend/js_backend.dart' show JavaScriptBackend;
import 'resolution/tree_elements.dart' show TreeElements;
@@ -767,7 +768,8 @@ class ClosureTranslator extends Visitor {
}
void useTypeVariableAsLocal(ResolutionTypeVariableType typeVariable) {
- useLocal(new TypeVariableLocal(typeVariable, outermostElement));
+ useLocal(new TypeVariableLocal(
+ typeVariable, outermostElement, outermostElement.memberContext));
}
void declareLocal(LocalVariableElement element) {
@@ -1217,15 +1219,14 @@ class ClosureTranslator extends Visitor {
/// A type variable as a local variable.
class TypeVariableLocal implements Local {
- final ResolutionTypeVariableType typeVariable;
- final ExecutableElement executableContext;
+ final TypeVariableType typeVariable;
+ final Entity executableContext;
+ final MemberEntity memberContext;
- TypeVariableLocal(this.typeVariable, this.executableContext);
-
- @override
- MemberElement get memberContext => executableContext.memberContext;
+ TypeVariableLocal(
+ this.typeVariable, this.executableContext, this.memberContext);
- String get name => typeVariable.name;
+ String get name => typeVariable.element.name;
int get hashCode => typeVariable.hashCode;
« no previous file with comments | « no previous file | pkg/compiler/lib/src/kernel/element_map.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698