| 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 'package:kernel/ast.dart' as ir; | 7 import 'package:kernel/ast.dart' as ir; |
| 8 | 8 |
| 9 import '../closure.dart' show ClosureConversionTask; | 9 import '../closure.dart' show ClosureConversionTask; |
| 10 import '../common.dart'; | 10 import '../common.dart'; |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 87 } | 87 } |
| 88 | 88 |
| 89 NativeBasicData _convertNativeBasicData( | 89 NativeBasicData _convertNativeBasicData( |
| 90 JsToFrontendMap map, NativeBasicDataImpl nativeBasicData) { | 90 JsToFrontendMap map, NativeBasicDataImpl nativeBasicData) { |
| 91 Map<ClassEntity, NativeClassTag> nativeClassTagInfo = | 91 Map<ClassEntity, NativeClassTag> nativeClassTagInfo = |
| 92 <ClassEntity, NativeClassTag>{}; | 92 <ClassEntity, NativeClassTag>{}; |
| 93 nativeBasicData.nativeClassTagInfo | 93 nativeBasicData.nativeClassTagInfo |
| 94 .forEach((ClassEntity cls, NativeClassTag tag) { | 94 .forEach((ClassEntity cls, NativeClassTag tag) { |
| 95 nativeClassTagInfo[map.toBackendClass(cls)] = tag; | 95 nativeClassTagInfo[map.toBackendClass(cls)] = tag; |
| 96 }); | 96 }); |
| 97 Set<LibraryEntity> jsInteropLibraries = | 97 Map<LibraryEntity, String> jsInteropLibraries = |
| 98 map.toBackendLibrarySet(nativeBasicData.jsInteropLibraries); | 98 map.toBackendLibraryMap(nativeBasicData.jsInteropLibraries, identity); |
| 99 Set<ClassEntity> jsInteropClasses = | 99 Map<ClassEntity, String> jsInteropClasses = |
| 100 map.toBackendClassSet(nativeBasicData.jsInteropClasses); | 100 map.toBackendClassMap(nativeBasicData.jsInteropClasses, identity); |
| 101 return new NativeBasicDataImpl(_elementEnvironment, nativeClassTagInfo, | 101 Set<ClassEntity> anonymousJsInteropClasses = |
| 102 jsInteropLibraries, jsInteropClasses); | 102 map.toBackendClassSet(nativeBasicData.anonymousJsInteropClasses); |
| 103 Map<MemberEntity, String> jsInteropMembers = |
| 104 map.toBackendMemberMap(nativeBasicData.jsInteropMembers, identity); |
| 105 return new NativeBasicDataImpl( |
| 106 _elementEnvironment, |
| 107 nativeClassTagInfo, |
| 108 jsInteropLibraries, |
| 109 jsInteropClasses, |
| 110 anonymousJsInteropClasses, |
| 111 jsInteropMembers); |
| 103 } | 112 } |
| 104 | 113 |
| 105 NativeData _convertNativeData( | 114 NativeData _convertNativeData( |
| 106 JsToFrontendMap map, NativeDataImpl nativeData) { | 115 JsToFrontendMap map, NativeDataImpl nativeData) { |
| 107 convertNativeBehaviorType(type) { | 116 convertNativeBehaviorType(type) { |
| 108 if (type is DartType) return map.toBackendType(type); | 117 if (type is DartType) return map.toBackendType(type); |
| 109 assert(type is SpecialType); | 118 assert(type is SpecialType); |
| 110 return type; | 119 return type; |
| 111 } | 120 } |
| 112 | 121 |
| (...skipping 26 matching lines...) Expand all Loading... |
| 139 nativeMethodBehavior[map.toBackendMember(method)] = | 148 nativeMethodBehavior[map.toBackendMember(method)] = |
| 140 convertNativeBehavior(behavior); | 149 convertNativeBehavior(behavior); |
| 141 }); | 150 }); |
| 142 Map<MemberEntity, NativeBehavior> nativeFieldLoadBehavior = | 151 Map<MemberEntity, NativeBehavior> nativeFieldLoadBehavior = |
| 143 map.toBackendMemberMap( | 152 map.toBackendMemberMap( |
| 144 nativeData.nativeFieldLoadBehavior, convertNativeBehavior); | 153 nativeData.nativeFieldLoadBehavior, convertNativeBehavior); |
| 145 Map<MemberEntity, NativeBehavior> nativeFieldStoreBehavior = | 154 Map<MemberEntity, NativeBehavior> nativeFieldStoreBehavior = |
| 146 map.toBackendMemberMap( | 155 map.toBackendMemberMap( |
| 147 nativeData.nativeFieldStoreBehavior, convertNativeBehavior); | 156 nativeData.nativeFieldStoreBehavior, convertNativeBehavior); |
| 148 Map<LibraryEntity, String> jsInteropLibraryNames = | 157 Map<LibraryEntity, String> jsInteropLibraryNames = |
| 149 map.toBackendLibraryMap(nativeData.jsInteropLibraryNames, identity); | 158 map.toBackendLibraryMap(nativeData.jsInteropLibraries, identity); |
| 150 Set<ClassEntity> anonymousJsInteropClasses = | 159 Set<ClassEntity> anonymousJsInteropClasses = |
| 151 map.toBackendClassSet(nativeData.anonymousJsInteropClasses); | 160 map.toBackendClassSet(nativeData.anonymousJsInteropClasses); |
| 152 Map<ClassEntity, String> jsInteropClassNames = | 161 Map<ClassEntity, String> jsInteropClassNames = |
| 153 map.toBackendClassMap(nativeData.jsInteropClassNames, identity); | 162 map.toBackendClassMap(nativeData.jsInteropClasses, identity); |
| 154 Map<MemberEntity, String> jsInteropMemberNames = | 163 Map<MemberEntity, String> jsInteropMemberNames = |
| 155 map.toBackendMemberMap(nativeData.jsInteropMemberNames, identity); | 164 map.toBackendMemberMap(nativeData.jsInteropMembers, identity); |
| 156 | 165 |
| 157 return new NativeDataImpl( | 166 return new NativeDataImpl( |
| 158 nativeBasicData, | 167 nativeBasicData, |
| 159 nativeMemberName, | 168 nativeMemberName, |
| 160 nativeMethodBehavior, | 169 nativeMethodBehavior, |
| 161 nativeFieldLoadBehavior, | 170 nativeFieldLoadBehavior, |
| 162 nativeFieldStoreBehavior, | 171 nativeFieldStoreBehavior, |
| 163 jsInteropLibraryNames, | 172 jsInteropLibraryNames, |
| 164 anonymousJsInteropClasses, | 173 anonymousJsInteropClasses, |
| 165 jsInteropClassNames, | 174 jsInteropClassNames, |
| (...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 424 node.isDirectlyInstantiated = true; | 433 node.isDirectlyInstantiated = true; |
| 425 | 434 |
| 426 return cls; | 435 return cls; |
| 427 } | 436 } |
| 428 | 437 |
| 429 @override | 438 @override |
| 430 void registerClosureClass(ClassEntity cls) { | 439 void registerClosureClass(ClassEntity cls) { |
| 431 throw new UnsupportedError('JsClosedWorld.registerClosureClass'); | 440 throw new UnsupportedError('JsClosedWorld.registerClosureClass'); |
| 432 } | 441 } |
| 433 } | 442 } |
| OLD | NEW |