| OLD | NEW |
| 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, 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_model.strategy; | 5 library dart2js.js_model.strategy; |
| 6 | 6 |
| 7 import '../closure.dart' show ClosureConversionTask; | 7 import '../closure.dart' show ClosureConversionTask; |
| 8 import '../common.dart'; | 8 import '../common.dart'; |
| 9 import '../common/tasks.dart'; | 9 import '../common/tasks.dart'; |
| 10 import '../common_elements.dart'; | 10 import '../common_elements.dart'; |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 208 _compiler.reporter, _compiler.environment, strategy.elementMap); | 208 _compiler.reporter, _compiler.environment, strategy.elementMap); |
| 209 _elementEnvironment = _elementMap.elementEnvironment; | 209 _elementEnvironment = _elementMap.elementEnvironment; |
| 210 _commonElements = _elementMap.commonElements; | 210 _commonElements = _elementMap.commonElements; |
| 211 JsToFrontendMap map = new JsToFrontendMapImpl(_elementMap); | 211 JsToFrontendMap map = new JsToFrontendMapImpl(_elementMap); |
| 212 _closureDataLookup = new KernelClosureConversionTask( | 212 _closureDataLookup = new KernelClosureConversionTask( |
| 213 _compiler.measurer, _elementMap, map, _globalLocalsMap); | 213 _compiler.measurer, _elementMap, map, _globalLocalsMap); |
| 214 | 214 |
| 215 BackendUsage backendUsage = | 215 BackendUsage backendUsage = |
| 216 _convertBackendUsage(map, closedWorld.backendUsage); | 216 _convertBackendUsage(map, closedWorld.backendUsage); |
| 217 NativeData nativeData = _convertNativeData(map, closedWorld.nativeData); | 217 NativeData nativeData = _convertNativeData(map, closedWorld.nativeData); |
| 218 _elementMap.nativeBasicData = nativeData; |
| 218 InterceptorData interceptorData = | 219 InterceptorData interceptorData = |
| 219 _convertInterceptorData(map, nativeData, closedWorld.interceptorData); | 220 _convertInterceptorData(map, nativeData, closedWorld.interceptorData); |
| 220 | 221 |
| 221 Map<ClassEntity, ClassHierarchyNode> classHierarchyNodes = | 222 Map<ClassEntity, ClassHierarchyNode> classHierarchyNodes = |
| 222 <ClassEntity, ClassHierarchyNode>{}; | 223 <ClassEntity, ClassHierarchyNode>{}; |
| 223 Map<ClassEntity, ClassSet> classSets = <ClassEntity, ClassSet>{}; | 224 Map<ClassEntity, ClassSet> classSets = <ClassEntity, ClassSet>{}; |
| 224 Set<ClassEntity> implementedClasses = new Set<ClassEntity>(); | 225 Set<ClassEntity> implementedClasses = new Set<ClassEntity>(); |
| 225 | 226 |
| 226 ClassHierarchyNode convertClassHierarchyNode(ClassHierarchyNode node) { | 227 ClassHierarchyNode convertClassHierarchyNode(ClassHierarchyNode node) { |
| 227 ClassEntity cls = map.toBackendClass(node.cls); | 228 ClassEntity cls = map.toBackendClass(node.cls); |
| (...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 395 // TODO(efortuna): assert that the FunctionClass is in this ordered set. | 396 // TODO(efortuna): assert that the FunctionClass is in this ordered set. |
| 396 // If not, we need to explicitly add node as a subtype of FunctionClass. | 397 // If not, we need to explicitly add node as a subtype of FunctionClass. |
| 397 ClassSet subtypeSet = getClassSet(type.element); | 398 ClassSet subtypeSet = getClassSet(type.element); |
| 398 subtypeSet.addSubtype(node); | 399 subtypeSet.addSubtype(node); |
| 399 } | 400 } |
| 400 addClassSet(cls, new ClassSet(node)); | 401 addClassSet(cls, new ClassSet(node)); |
| 401 elementMap.addClosureClass(cls, new InterfaceType(superclass, const [])); | 402 elementMap.addClosureClass(cls, new InterfaceType(superclass, const [])); |
| 402 node.isDirectlyInstantiated = true; | 403 node.isDirectlyInstantiated = true; |
| 403 } | 404 } |
| 404 } | 405 } |
| OLD | NEW |