| 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 1155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1166 rti.registerRtiDependency(helpers.mapLiteralClass, cls); | 1166 rti.registerRtiDependency(helpers.mapLiteralClass, cls); |
| 1167 } else if (cls == helpers.boundClosureClass) { | 1167 } else if (cls == helpers.boundClosureClass) { |
| 1168 impactTransformer.registerBackendImpact( | 1168 impactTransformer.registerBackendImpact( |
| 1169 impactBuilder, impacts.boundClosureClass); | 1169 impactBuilder, impacts.boundClosureClass); |
| 1170 } else if (isNativeOrExtendsNative(cls)) { | 1170 } else if (isNativeOrExtendsNative(cls)) { |
| 1171 impactTransformer.registerBackendImpact( | 1171 impactTransformer.registerBackendImpact( |
| 1172 impactBuilder, impacts.nativeOrExtendsClass); | 1172 impactBuilder, impacts.nativeOrExtendsClass); |
| 1173 } else if (cls == helpers.mapLiteralClass) { | 1173 } else if (cls == helpers.mapLiteralClass) { |
| 1174 impactTransformer.registerBackendImpact( | 1174 impactTransformer.registerBackendImpact( |
| 1175 impactBuilder, impacts.mapLiteralClass); | 1175 impactBuilder, impacts.mapLiteralClass); |
| 1176 } else if (cls == commonElements.objectClass) { |
| 1177 impactTransformer.registerBackendImpact( |
| 1178 impactBuilder, impacts.objectClass); |
| 1176 } | 1179 } |
| 1177 } | 1180 } |
| 1178 if (cls == helpers.closureClass) { | 1181 if (cls == helpers.closureClass) { |
| 1179 impactTransformer.registerBackendImpact( | 1182 impactTransformer.registerBackendImpact( |
| 1180 impactBuilder, impacts.closureClass); | 1183 impactBuilder, impacts.closureClass); |
| 1181 } | 1184 } |
| 1182 if (cls == commonElements.stringClass || cls == helpers.jsStringClass) { | 1185 if (cls == commonElements.stringClass || cls == helpers.jsStringClass) { |
| 1183 addInterceptors(helpers.jsStringClass, impactBuilder, | 1186 addInterceptors(helpers.jsStringClass, impactBuilder, |
| 1184 forResolution: forResolution); | 1187 forResolution: forResolution); |
| 1185 } else if (cls == commonElements.listClass || | 1188 } else if (cls == commonElements.listClass || |
| (...skipping 2042 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3228 resolution.emptyCache(); | 3231 resolution.emptyCache(); |
| 3229 } | 3232 } |
| 3230 } | 3233 } |
| 3231 } | 3234 } |
| 3232 | 3235 |
| 3233 class JavaScriptBackendClasses implements BackendClasses { | 3236 class JavaScriptBackendClasses implements BackendClasses { |
| 3234 final BackendHelpers helpers; | 3237 final BackendHelpers helpers; |
| 3235 | 3238 |
| 3236 JavaScriptBackendClasses(this.helpers); | 3239 JavaScriptBackendClasses(this.helpers); |
| 3237 | 3240 |
| 3241 ClassElement get voidClass => helpers.voidClass; |
| 3238 ClassElement get intClass => helpers.jsIntClass; | 3242 ClassElement get intClass => helpers.jsIntClass; |
| 3239 ClassElement get uint32Class => helpers.jsUInt32Class; | 3243 ClassElement get uint32Class => helpers.jsUInt32Class; |
| 3240 ClassElement get uint31Class => helpers.jsUInt31Class; | 3244 ClassElement get uint31Class => helpers.jsUInt31Class; |
| 3241 ClassElement get positiveIntClass => helpers.jsPositiveIntClass; | 3245 ClassElement get positiveIntClass => helpers.jsPositiveIntClass; |
| 3242 ClassElement get doubleClass => helpers.jsDoubleClass; | 3246 ClassElement get doubleClass => helpers.jsDoubleClass; |
| 3243 ClassElement get numClass => helpers.jsNumberClass; | 3247 ClassElement get numClass => helpers.jsNumberClass; |
| 3244 ClassElement get stringClass => helpers.jsStringClass; | 3248 ClassElement get stringClass => helpers.jsStringClass; |
| 3245 ClassElement get listClass => helpers.jsArrayClass; | 3249 ClassElement get listClass => helpers.jsArrayClass; |
| 3246 ClassElement get mutableListClass => helpers.jsMutableArrayClass; | 3250 ClassElement get mutableListClass => helpers.jsMutableArrayClass; |
| 3247 ClassElement get constListClass => helpers.jsUnmodifiableArrayClass; | 3251 ClassElement get constListClass => helpers.jsUnmodifiableArrayClass; |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3281 @override | 3285 @override |
| 3282 bool isNativeClass(ClassElement element) { | 3286 bool isNativeClass(ClassElement element) { |
| 3283 return helpers.backend.isNative(element); | 3287 return helpers.backend.isNative(element); |
| 3284 } | 3288 } |
| 3285 | 3289 |
| 3286 @override | 3290 @override |
| 3287 bool isNativeMember(MemberElement element) { | 3291 bool isNativeMember(MemberElement element) { |
| 3288 return helpers.backend.isNative(element); | 3292 return helpers.backend.isNative(element); |
| 3289 } | 3293 } |
| 3290 } | 3294 } |
| OLD | NEW |