OLD | NEW |
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 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 /// [_onQueueEmpty] is called whenever the queue is drained. [recentClasses] | 241 /// [_onQueueEmpty] is called whenever the queue is drained. [recentClasses] |
242 /// contains the set of all classes seen for the first time since | 242 /// contains the set of all classes seen for the first time since |
243 /// [_onQueueEmpty] was called last. A return value of [true] indicates that | 243 /// [_onQueueEmpty] was called last. A return value of [true] indicates that |
244 /// the [recentClasses] have been processed and may be cleared. If [false] is | 244 /// the [recentClasses] have been processed and may be cleared. If [false] is |
245 /// returned, [_onQueueEmpty] will be called once the queue is empty again (or | 245 /// returned, [_onQueueEmpty] will be called once the queue is empty again (or |
246 /// still empty) and [recentClasses] will be a superset of the current value. | 246 /// still empty) and [recentClasses] will be a superset of the current value. |
247 bool _onQueueEmpty(Iterable<ClassEntity> recentClasses) { | 247 bool _onQueueEmpty(Iterable<ClassEntity> recentClasses) { |
248 return listener.onQueueEmpty(this, recentClasses); | 248 return listener.onQueueEmpty(this, recentClasses); |
249 } | 249 } |
250 | 250 |
251 void logSummary(log(message)) { | 251 @override |
| 252 void logSummary(void log(String message)) { |
252 log('Compiled ${_processedEntities.length} methods.'); | 253 log('Compiled ${_processedEntities.length} methods.'); |
253 listener.logSummary(log); | 254 listener.logSummary(log); |
254 } | 255 } |
255 | 256 |
256 String toString() => 'Enqueuer($name)'; | 257 String toString() => 'Enqueuer($name)'; |
257 | 258 |
258 ImpactUseCase get impactUse => IMPACT_USE; | 259 ImpactUseCase get impactUse => IMPACT_USE; |
259 | 260 |
260 @override | 261 @override |
261 Iterable<Entity> get processedEntities => _processedEntities; | 262 Iterable<Entity> get processedEntities => _processedEntities; |
(...skipping 21 matching lines...) Expand all Loading... |
283 // code for checked setters. | 284 // code for checked setters. |
284 if (element.isField && element.isInstanceMember) { | 285 if (element.isField && element.isInstanceMember) { |
285 if (!_options.enableTypeAssertions || | 286 if (!_options.enableTypeAssertions || |
286 element.enclosingElement.isClosure) { | 287 element.enclosingElement.isClosure) { |
287 return null; | 288 return null; |
288 } | 289 } |
289 } | 290 } |
290 return new CodegenWorkItem(_backend, element); | 291 return new CodegenWorkItem(_backend, element); |
291 } | 292 } |
292 } | 293 } |
OLD | NEW |