OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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_helpers.impact; | 5 library dart2js.js_helpers.impact; |
6 | 6 |
7 import '../common/names.dart'; | 7 import '../common/names.dart'; |
8 import '../compiler.dart' show Compiler; | 8 import '../compiler.dart' show Compiler; |
9 import '../core_types.dart' show CommonElements; | 9 import '../core_types.dart' show CommonElements; |
10 import '../elements/resolution_types.dart' show ResolutionInterfaceType; | 10 import '../elements/resolution_types.dart' show ResolutionInterfaceType; |
11 import '../elements/elements.dart' show ClassElement, Element; | 11 import '../elements/elements.dart' show ClassElement, Element; |
12 import '../universe/selector.dart'; | 12 import '../universe/selector.dart'; |
13 import '../util/enumset.dart'; | 13 import '../util/enumset.dart'; |
14 import 'backend_helpers.dart'; | 14 import 'backend_helpers.dart'; |
15 import 'constant_system_javascript.dart'; | |
16 import 'js_backend.dart'; | 15 import 'js_backend.dart'; |
17 | 16 |
18 /// Backend specific features required by a backend impact. | 17 /// Backend specific features required by a backend impact. |
19 enum BackendFeature { | 18 enum BackendFeature { |
20 needToInitializeIsolateAffinityTag, | 19 needToInitializeIsolateAffinityTag, |
21 needToInitializeDispatchProperty, | 20 needToInitializeDispatchProperty, |
22 } | 21 } |
23 | 22 |
24 /// A set of JavaScript backend dependencies. | 23 /// A set of JavaScript backend dependencies. |
25 class BackendImpact { | 24 class BackendImpact { |
(...skipping 703 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
729 | 728 |
730 BackendImpact _staticClosure; | 729 BackendImpact _staticClosure; |
731 | 730 |
732 /// Backend impact for performing closurization of a top-level or static | 731 /// Backend impact for performing closurization of a top-level or static |
733 /// function. | 732 /// function. |
734 BackendImpact get staticClosure { | 733 BackendImpact get staticClosure { |
735 return _staticClosure ??= | 734 return _staticClosure ??= |
736 new BackendImpact(globalClasses: [helpers.closureClass]); | 735 new BackendImpact(globalClasses: [helpers.closureClass]); |
737 } | 736 } |
738 } | 737 } |
OLD | NEW |