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

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

Issue 2647893002: Use entities in js_emitter/model.dart (Closed)
Patch Set: Created 3 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
Index: pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart
diff --git a/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart b/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart
index 558346628fee72853bf14730c3c11b95d1361ca2..3f612d3ca002ddeadc0b828882e27cbdb5dd48c9 100644
--- a/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart
+++ b/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart
@@ -291,7 +291,7 @@ class ProgramBuilder {
LibrariesMap librariesMap) {
JavaScriptConstantCompiler handler = backend.constants;
DeferredLoadTask loadTask = _compiler.deferredLoadTask;
- Iterable<VariableElement> lazyFields = handler
+ Iterable<FieldElement> lazyFields = handler
.getLazilyInitializedFieldsForEmission()
.where((element) =>
loadTask.outputUnitForElement(element) == librariesMap.outputUnit);
@@ -302,7 +302,7 @@ class ProgramBuilder {
.toList(growable: false);
}
- StaticField _buildLazyField(Element element) {
+ StaticField _buildLazyField(FieldElement element) {
js.Expression code = backend.generatedCode[element];
// The code is null if we ended up not needing the lazily
// initialized field after all because of constant folding
@@ -604,7 +604,7 @@ class ProgramBuilder {
for (Field field in instanceFields) {
if (field.needsCheckedSetter) {
assert(!field.needsUncheckedSetter);
- Element element = field.element;
+ FieldElement element = field.element;
js.Expression code = backend.generatedCode[element];
assert(code != null);
js.Name name = namer.deriveSetterName(field.accessorName);
@@ -714,6 +714,7 @@ class ProgramBuilder {
}
DartMethod _buildMethod(MethodElement element) {
+ assert(element.isDeclaration);
js.Name name = namer.methodPropertyName(element);
js.Expression code = backend.generatedCode[element];
@@ -825,7 +826,8 @@ class ProgramBuilder {
///
/// Stub methods may have an element that can be used for code-size
/// attribution.
- Method _buildStubMethod(js.Name name, js.Expression code, {Element element}) {
+ Method _buildStubMethod(js.Name name, js.Expression code,
+ {MemberElement element}) {
return new StubMethod(name, code, element: element);
}
@@ -923,7 +925,7 @@ class ProgramBuilder {
});
}
- StaticDartMethod _buildStaticMethod(FunctionElement element) {
+ StaticDartMethod _buildStaticMethod(MethodElement element) {
js.Name name = namer.methodPropertyName(element);
String holder = namer.globalObjectFor(element);
js.Expression code = backend.generatedCode[element];

Powered by Google App Engine
This is Rietveld 408576698