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

Side by Side Diff: pkg/compiler/lib/src/js_backend/enqueuer.dart

Issue 2884233002: Use entities in runtime_types (Closed)
Patch Set: Remove debug print Created 3 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.js.enqueue; 5 library dart2js.js.enqueue;
6 6
7 import 'dart:collection' show Queue; 7 import 'dart:collection' show Queue;
8 8
9 import '../common/codegen.dart' show CodegenWorkItem; 9 import '../common/codegen.dart' show CodegenWorkItem;
10 import '../common/tasks.dart' show CompilerTask; 10 import '../common/tasks.dart' show CompilerTask;
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 applyImpact(listener.registerUsedConstant(constantUse.value)); 209 applyImpact(listener.registerUsedConstant(constantUse.value));
210 _recentConstants = true; 210 _recentConstants = true;
211 } 211 }
212 }); 212 });
213 } 213 }
214 214
215 void _registerIsCheck(ResolutionDartType type) { 215 void _registerIsCheck(ResolutionDartType type) {
216 _worldBuilder.registerIsCheck(type); 216 _worldBuilder.registerIsCheck(type);
217 } 217 }
218 218
219 void _registerClosurizedMember(MemberElement element) { 219 void _registerClosurizedMember(FunctionEntity element) {
220 assert(element.isInstanceMember); 220 assert(element.isInstanceMember);
221 applyImpact(listener.registerClosurizedMember(element)); 221 applyImpact(listener.registerClosurizedMember(element));
222 _worldBuilder.registerClosurizedMember(element);
Siggi Cherem (dart-lang) 2017/05/17 16:14:11 should "closurized-member" be encoded as part of t
Johnni Winther 2017/05/18 08:10:56 Cannot be done - it's is non-local property: clas
222 } 223 }
223 224
224 void forEach(void f(WorkItem work)) { 225 void forEach(void f(WorkItem work)) {
225 do { 226 do {
226 while (_queue.isNotEmpty) { 227 while (_queue.isNotEmpty) {
227 // TODO(johnniwinther): Find an optimal process order. 228 // TODO(johnniwinther): Find an optimal process order.
228 WorkItem work = _queue.removeLast(); 229 WorkItem work = _queue.removeLast();
229 if (!_processedEntities.contains(work.element)) { 230 if (!_processedEntities.contains(work.element)) {
230 strategy.processWorkItem(f, work); 231 strategy.processWorkItem(f, work);
231 // TODO(johnniwinther): Register the processed element here. This 232 // TODO(johnniwinther): Register the processed element here. This
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 // code for checked setters. 289 // code for checked setters.
289 if (element.isField && element.isInstanceMember) { 290 if (element.isField && element.isInstanceMember) {
290 if (!_options.enableTypeAssertions || 291 if (!_options.enableTypeAssertions ||
291 element.enclosingElement.isClosure) { 292 element.enclosingElement.isClosure) {
292 return null; 293 return null;
293 } 294 }
294 } 295 }
295 return new CodegenWorkItem(_backend, _closedWorld, element); 296 return new CodegenWorkItem(_backend, _closedWorld, element);
296 } 297 }
297 } 298 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698