| 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 3243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3254 ClassElement get asyncStarStreamImplementation => helpers.controllerStream; | 3254 ClassElement get asyncStarStreamImplementation => helpers.controllerStream; |
| 3255 ClassElement get functionImplementation => | 3255 ClassElement get functionImplementation => |
| 3256 helpers.commonElements.functionClass; | 3256 helpers.commonElements.functionClass; |
| 3257 ClassElement get indexableImplementation => helpers.jsIndexableClass; | 3257 ClassElement get indexableImplementation => helpers.jsIndexableClass; |
| 3258 ClassElement get mutableIndexableImplementation => | 3258 ClassElement get mutableIndexableImplementation => |
| 3259 helpers.jsMutableIndexableClass; | 3259 helpers.jsMutableIndexableClass; |
| 3260 ClassElement get indexingBehaviorImplementation => | 3260 ClassElement get indexingBehaviorImplementation => |
| 3261 helpers.jsIndexingBehaviorInterface; | 3261 helpers.jsIndexingBehaviorInterface; |
| 3262 ClassElement get interceptorImplementation => helpers.jsInterceptorClass; | 3262 ClassElement get interceptorImplementation => helpers.jsInterceptorClass; |
| 3263 | 3263 |
| 3264 bool isDefaultEqualityImplementation(Element element) { | 3264 bool isDefaultEqualityImplementation(MemberElement element) { |
| 3265 assert(element.name == '=='); | 3265 assert(element.name == '=='); |
| 3266 ClassElement classElement = element.enclosingClass; | 3266 ClassElement classElement = element.enclosingClass; |
| 3267 return classElement == helpers.commonElements.objectClass || | 3267 return classElement == helpers.commonElements.objectClass || |
| 3268 classElement == helpers.jsInterceptorClass || | 3268 classElement == helpers.jsInterceptorClass || |
| 3269 classElement == helpers.jsNullClass; | 3269 classElement == helpers.jsNullClass; |
| 3270 } | 3270 } |
| 3271 | 3271 |
| 3272 @override | 3272 @override |
| 3273 bool isInterceptorClass(ClassElement cls) { | 3273 bool isInterceptorClass(ClassElement cls) { |
| 3274 return helpers.backend.isInterceptorClass(cls); | 3274 return helpers.backend.isInterceptorClass(cls); |
| 3275 } | 3275 } |
| 3276 | 3276 |
| 3277 @override | 3277 @override |
| 3278 bool isNativeClass(ClassElement element) { | 3278 bool isNativeClass(ClassElement element) { |
| 3279 return helpers.backend.isNative(element); | 3279 return helpers.backend.isNative(element); |
| 3280 } | 3280 } |
| 3281 | 3281 |
| 3282 @override | 3282 @override |
| 3283 bool isNativeMember(MemberElement element) { | 3283 bool isNativeMember(MemberElement element) { |
| 3284 return helpers.backend.isNative(element); | 3284 return helpers.backend.isNative(element); |
| 3285 } | 3285 } |
| 3286 } | 3286 } |
| OLD | NEW |