| 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 617 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 628 | 628 |
| 629 CoreTypes get coreTypes => compiler.coreTypes; | 629 CoreTypes get coreTypes => compiler.coreTypes; |
| 630 | 630 |
| 631 Resolution get resolution => compiler.resolution; | 631 Resolution get resolution => compiler.resolution; |
| 632 | 632 |
| 633 /// Returns constant environment for the JavaScript interpretation of the | 633 /// Returns constant environment for the JavaScript interpretation of the |
| 634 /// constants. | 634 /// constants. |
| 635 JavaScriptConstantCompiler get constants { | 635 JavaScriptConstantCompiler get constants { |
| 636 return constantCompilerTask.jsConstantCompiler; | 636 return constantCompilerTask.jsConstantCompiler; |
| 637 } | 637 } |
| 638 |
| 639 @override |
| 640 bool isDefaultNoSuchMethod(MethodElement element) { |
| 641 return noSuchMethodRegistry.isDefaultNoSuchMethodImplementation(element); |
| 642 } |
| 638 | 643 |
| 639 MethodElement resolveExternalFunction(MethodElement element) { | 644 MethodElement resolveExternalFunction(MethodElement element) { |
| 640 if (isForeign(element)) { | 645 if (isForeign(element)) { |
| 641 return element; | 646 return element; |
| 642 } | 647 } |
| 643 if (isJsInterop(element)) { | 648 if (isJsInterop(element)) { |
| 644 if (element.memberName == const PublicName('[]') || | 649 if (element.memberName == const PublicName('[]') || |
| 645 element.memberName == const PublicName('[]=')) { | 650 element.memberName == const PublicName('[]=')) { |
| 646 reporter.reportErrorMessage( | 651 reporter.reportErrorMessage( |
| 647 element, MessageKind.JS_INTEROP_INDEX_NOT_SUPPORTED); | 652 element, MessageKind.JS_INTEROP_INDEX_NOT_SUPPORTED); |
| (...skipping 2547 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3195 | 3200 |
| 3196 @override | 3201 @override |
| 3197 void onImpactUsed(ImpactUseCase impactUse) { | 3202 void onImpactUsed(ImpactUseCase impactUse) { |
| 3198 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { | 3203 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { |
| 3199 // TODO(johnniwinther): Allow emptying when serialization has been | 3204 // TODO(johnniwinther): Allow emptying when serialization has been |
| 3200 // performed. | 3205 // performed. |
| 3201 resolution.emptyCache(); | 3206 resolution.emptyCache(); |
| 3202 } | 3207 } |
| 3203 } | 3208 } |
| 3204 } | 3209 } |
| OLD | NEW |