| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 // Tests that the closed world computed from [WorldImpact]s derived from kernel | 5 // Tests that the closed world computed from [WorldImpact]s derived from kernel |
| 6 // is equivalent to the original computed from resolution. | 6 // is equivalent to the original computed from resolution. |
| 7 library dart2js.kernel.closed_world_test; | 7 library dart2js.kernel.closed_world_test; |
| 8 | 8 |
| 9 import 'package:async_helper/async_helper.dart'; | 9 import 'package:async_helper/async_helper.dart'; |
| 10 import 'package:compiler/src/commandline_options.dart'; | 10 import 'package:compiler/src/commandline_options.dart'; |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 List list = createResolutionEnqueuerListener(compiler); | 93 List list = createResolutionEnqueuerListener(compiler); |
| 94 ResolutionEnqueuerListener resolutionEnqueuerListener = list[0]; | 94 ResolutionEnqueuerListener resolutionEnqueuerListener = list[0]; |
| 95 BackendUsageBuilder backendUsageBuilder = list[1]; | 95 BackendUsageBuilder backendUsageBuilder = list[1]; |
| 96 ResolutionEnqueuer enqueuer = new ResolutionEnqueuer( | 96 ResolutionEnqueuer enqueuer = new ResolutionEnqueuer( |
| 97 compiler.enqueuer, | 97 compiler.enqueuer, |
| 98 compiler.options, | 98 compiler.options, |
| 99 compiler.reporter, | 99 compiler.reporter, |
| 100 const TreeShakingEnqueuerStrategy(), | 100 const TreeShakingEnqueuerStrategy(), |
| 101 resolutionEnqueuerListener, | 101 resolutionEnqueuerListener, |
| 102 new ElementResolutionWorldBuilder( | 102 new ElementResolutionWorldBuilder( |
| 103 backend, compiler.resolution, const OpenWorldStrategy()), | 103 backend, |
| 104 compiler.resolution, |
| 105 backend.nativeBasicData, |
| 106 backend.nativeDataBuilder, |
| 107 const OpenWorldStrategy()), |
| 104 new KernelWorkItemBuilder(compiler), | 108 new KernelWorkItemBuilder(compiler), |
| 105 'enqueuer from kernel'); | 109 'enqueuer from kernel'); |
| 106 ClosedWorld closedWorld = computeClosedWorld( | 110 ClosedWorld closedWorld = computeClosedWorld( |
| 107 compiler.reporter, enqueuer, compiler.elementEnvironment); | 111 compiler.reporter, enqueuer, compiler.elementEnvironment); |
| 108 BackendUsage backendUsage = backendUsageBuilder.close(); | 112 BackendUsage backendUsage = backendUsageBuilder.close(); |
| 109 checkResolutionEnqueuers( | 113 checkResolutionEnqueuers( |
| 110 backendUsage, backendUsage, compiler.enqueuer.resolution, enqueuer, | 114 backendUsage, backendUsage, compiler.enqueuer.resolution, enqueuer, |
| 111 typeEquivalence: (ResolutionDartType a, ResolutionDartType b) { | 115 typeEquivalence: (ResolutionDartType a, ResolutionDartType b) { |
| 112 return areTypesEquivalent(unalias(a), unalias(b)); | 116 return areTypesEquivalent(unalias(a), unalias(b)); |
| 113 }, elementFilter: elementFilter, verbose: arguments.verbose); | 117 }, elementFilter: elementFilter, verbose: arguments.verbose); |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 189 final MemberElement element; | 193 final MemberElement element; |
| 190 | 194 |
| 191 KernelWorkItem(this._compiler, this._impactTransformer, this.element); | 195 KernelWorkItem(this._compiler, this._impactTransformer, this.element); |
| 192 | 196 |
| 193 @override | 197 @override |
| 194 WorldImpact run() { | 198 WorldImpact run() { |
| 195 ResolutionImpact resolutionImpact = build(_compiler, element.resolvedAst); | 199 ResolutionImpact resolutionImpact = build(_compiler, element.resolvedAst); |
| 196 return _impactTransformer.transformResolutionImpact(resolutionImpact); | 200 return _impactTransformer.transformResolutionImpact(resolutionImpact); |
| 197 } | 201 } |
| 198 } | 202 } |
| OLD | NEW |