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 909 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
920 commonElements, | 920 commonElements, |
921 compiler.resolution); | 921 compiler.resolution); |
922 return new ResolutionEnqueuer( | 922 return new ResolutionEnqueuer( |
923 task, | 923 task, |
924 compiler.options, | 924 compiler.options, |
925 compiler.reporter, | 925 compiler.reporter, |
926 compiler.options.analyzeOnly && compiler.options.analyzeMain | 926 compiler.options.analyzeOnly && compiler.options.analyzeMain |
927 ? const DirectEnqueuerStrategy() | 927 ? const DirectEnqueuerStrategy() |
928 : const TreeShakingEnqueuerStrategy(), | 928 : const TreeShakingEnqueuerStrategy(), |
929 new ResolutionEnqueuerListener( | 929 new ResolutionEnqueuerListener( |
930 kernelTask, | |
931 compiler.options, | 930 compiler.options, |
932 compiler.elementEnvironment, | 931 compiler.elementEnvironment, |
933 commonElements, | 932 commonElements, |
934 helpers, | 933 helpers, |
935 impacts, | 934 impacts, |
936 backendClasses, | 935 backendClasses, |
937 nativeBasicData, | 936 nativeBasicData, |
938 interceptorDataBuilder, | 937 interceptorDataBuilder, |
939 backendUsageBuilder, | 938 backendUsageBuilder, |
940 rtiNeedBuilder, | 939 rtiNeedBuilder, |
941 mirrorsDataBuilder, | 940 mirrorsDataBuilder, |
942 noSuchMethodRegistry, | 941 noSuchMethodRegistry, |
943 customElementsResolutionAnalysis, | 942 customElementsResolutionAnalysis, |
944 lookupMapResolutionAnalysis, | 943 lookupMapResolutionAnalysis, |
945 mirrorsResolutionAnalysis, | 944 mirrorsResolutionAnalysis, |
946 typeVariableResolutionAnalysis, | 945 typeVariableResolutionAnalysis, |
947 nativeResolutionEnqueuer), | 946 nativeResolutionEnqueuer, |
| 947 kernelTask), |
948 new ElementResolutionWorldBuilder( | 948 new ElementResolutionWorldBuilder( |
949 this, compiler.resolution, const OpenWorldStrategy()), | 949 this, compiler.resolution, const OpenWorldStrategy()), |
950 new ResolutionWorkItemBuilder(compiler.resolution)); | 950 new ResolutionWorkItemBuilder(compiler.resolution)); |
951 } | 951 } |
952 | 952 |
953 /// Creates an [Enqueuer] for code generation specific to this backend. | 953 /// Creates an [Enqueuer] for code generation specific to this backend. |
954 CodegenEnqueuer createCodegenEnqueuer( | 954 CodegenEnqueuer createCodegenEnqueuer( |
955 CompilerTask task, Compiler compiler, ClosedWorld closedWorld) { | 955 CompilerTask task, Compiler compiler, ClosedWorld closedWorld) { |
956 _typeVariableCodegenAnalysis = | 956 _typeVariableCodegenAnalysis = |
957 new TypeVariableCodegenAnalysis(this, helpers, mirrorsData); | 957 new TypeVariableCodegenAnalysis(this, helpers, mirrorsData); |
(...skipping 658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1616 return _backend.defaultSuperclass(element); | 1616 return _backend.defaultSuperclass(element); |
1617 } | 1617 } |
1618 | 1618 |
1619 @override | 1619 @override |
1620 bool isNativeClass(ClassEntity element) => | 1620 bool isNativeClass(ClassEntity element) => |
1621 _backend.nativeBasicData.isNativeClass(element); | 1621 _backend.nativeBasicData.isNativeClass(element); |
1622 | 1622 |
1623 @override | 1623 @override |
1624 bool isForeign(Element element) => _backend.isForeign(element); | 1624 bool isForeign(Element element) => _backend.isForeign(element); |
1625 } | 1625 } |
OLD | NEW |