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 1335 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1346 if (enqueuer.isResolutionQueue || methodNeedsRti(callMethod)) { | 1346 if (enqueuer.isResolutionQueue || methodNeedsRti(callMethod)) { |
1347 registerComputeSignature(enqueuer, registry); | 1347 registerComputeSignature(enqueuer, registry); |
1348 } | 1348 } |
1349 } | 1349 } |
1350 | 1350 |
1351 void registerClosureWithFreeTypeVariables( | 1351 void registerClosureWithFreeTypeVariables( |
1352 Element closure, Enqueuer enqueuer, Registry registry) { | 1352 Element closure, Enqueuer enqueuer, Registry registry) { |
1353 if (enqueuer.isResolutionQueue || methodNeedsRti(closure)) { | 1353 if (enqueuer.isResolutionQueue || methodNeedsRti(closure)) { |
1354 registerComputeSignature(enqueuer, registry); | 1354 registerComputeSignature(enqueuer, registry); |
1355 } | 1355 } |
1356 super.registerClosureWithFreeTypeVariables(closure, enqueuer, registry); | |
1357 } | 1356 } |
1358 | 1357 |
1359 void registerBoundClosure(Enqueuer enqueuer) { | 1358 void registerBoundClosure(Enqueuer enqueuer) { |
1360 helpers.boundClosureClass.ensureResolved(resolution); | 1359 helpers.boundClosureClass.ensureResolved(resolution); |
1361 registerInstantiatedType( | 1360 registerInstantiatedType( |
1362 helpers.boundClosureClass.rawType, | 1361 helpers.boundClosureClass.rawType, |
1363 enqueuer, | 1362 enqueuer, |
1364 // Precise dependency is not important here. | 1363 // Precise dependency is not important here. |
1365 compiler.globalDependencies); | 1364 compiler.globalDependencies); |
1366 } | 1365 } |
(...skipping 1831 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3198 | 3197 |
3199 @override | 3198 @override |
3200 void onImpactUsed(ImpactUseCase impactUse) { | 3199 void onImpactUsed(ImpactUseCase impactUse) { |
3201 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { | 3200 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { |
3202 // TODO(johnniwinther): Allow emptying when serialization has been | 3201 // TODO(johnniwinther): Allow emptying when serialization has been |
3203 // performed. | 3202 // performed. |
3204 resolution.emptyCache(); | 3203 resolution.emptyCache(); |
3205 } | 3204 } |
3206 } | 3205 } |
3207 } | 3206 } |
OLD | NEW |