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 js_backend.backend; | 5 library js_backend.backend; |
6 | 6 |
7 import 'dart:async' show Future; | 7 import 'dart:async' show Future; |
8 | 8 |
9 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; | 9 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; |
10 | 10 |
(...skipping 1344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1355 if (enqueuer.isResolutionQueue || methodNeedsRti(callMethod)) { | 1355 if (enqueuer.isResolutionQueue || methodNeedsRti(callMethod)) { |
1356 registerComputeSignature(enqueuer, registry); | 1356 registerComputeSignature(enqueuer, registry); |
1357 } | 1357 } |
1358 } | 1358 } |
1359 | 1359 |
1360 void registerClosureWithFreeTypeVariables( | 1360 void registerClosureWithFreeTypeVariables( |
1361 Element closure, Enqueuer enqueuer, Registry registry) { | 1361 Element closure, Enqueuer enqueuer, Registry registry) { |
1362 if (enqueuer.isResolutionQueue || methodNeedsRti(closure)) { | 1362 if (enqueuer.isResolutionQueue || methodNeedsRti(closure)) { |
1363 registerComputeSignature(enqueuer, registry); | 1363 registerComputeSignature(enqueuer, registry); |
1364 } | 1364 } |
1365 super.registerClosureWithFreeTypeVariables(closure, enqueuer, registry); | |
1366 } | 1365 } |
1367 | 1366 |
1368 void registerBoundClosure(Enqueuer enqueuer) { | 1367 void registerBoundClosure(Enqueuer enqueuer) { |
1369 helpers.boundClosureClass.ensureResolved(resolution); | 1368 helpers.boundClosureClass.ensureResolved(resolution); |
1370 registerInstantiatedType( | 1369 registerInstantiatedType( |
1371 helpers.boundClosureClass.rawType, | 1370 helpers.boundClosureClass.rawType, |
1372 enqueuer, | 1371 enqueuer, |
1373 // Precise dependency is not important here. | 1372 // Precise dependency is not important here. |
1374 compiler.globalDependencies); | 1373 compiler.globalDependencies); |
1375 } | 1374 } |
(...skipping 1847 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3223 | 3222 |
3224 @override | 3223 @override |
3225 void onImpactUsed(ImpactUseCase impactUse) { | 3224 void onImpactUsed(ImpactUseCase impactUse) { |
3226 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { | 3225 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { |
3227 // TODO(johnniwinther): Allow emptying when serialization has been | 3226 // TODO(johnniwinther): Allow emptying when serialization has been |
3228 // performed. | 3227 // performed. |
3229 resolution.emptyCache(); | 3228 resolution.emptyCache(); |
3230 } | 3229 } |
3231 } | 3230 } |
3232 } | 3231 } |
OLD | NEW |