| 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 dart2js.backend_api; | 5 library dart2js.backend_api; | 
| 6 | 6 | 
| 7 import 'dart:async' show Future; | 7 import 'dart:async' show Future; | 
| 8 | 8 | 
| 9 import '../common.dart'; | 9 import '../common.dart'; | 
| 10 import '../common/codegen.dart' show | 10 import '../common/codegen.dart' show | 
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 405 | 405 | 
| 406   void registerAsyncMarker(FunctionElement element, | 406   void registerAsyncMarker(FunctionElement element, | 
| 407                            Enqueuer enqueuer, | 407                            Enqueuer enqueuer, | 
| 408                            Registry registry) {} | 408                            Registry registry) {} | 
| 409 | 409 | 
| 410   /// Called when resolving a call to a foreign function. | 410   /// Called when resolving a call to a foreign function. | 
| 411   void registerForeignCall(Send node, | 411   void registerForeignCall(Send node, | 
| 412                            Element element, | 412                            Element element, | 
| 413                            CallStructure callStructure, | 413                            CallStructure callStructure, | 
| 414                            ForeignResolver resolver) {} | 414                            ForeignResolver resolver) {} | 
|  | 415 | 
|  | 416   /// Returns the location of the patch-file associated with [libraryName] | 
|  | 417   /// resolved from [plaformConfigUri]. | 
|  | 418   /// | 
|  | 419   /// Returns null if there is none. | 
|  | 420   Uri resolvePatchUri(String libraryName, Uri plaformConfigUri); | 
| 415 } | 421 } | 
| 416 | 422 | 
| 417 /// Interface for resolving calls to foreign functions. | 423 /// Interface for resolving calls to foreign functions. | 
| 418 abstract class ForeignResolver { | 424 abstract class ForeignResolver { | 
| 419   /// Returns the constant expression of [node], or `null` if [node] is not | 425   /// Returns the constant expression of [node], or `null` if [node] is not | 
| 420   /// a constant expression. | 426   /// a constant expression. | 
| 421   ConstantExpression getConstant(Node node); | 427   ConstantExpression getConstant(Node node); | 
| 422 | 428 | 
| 423   /// Registers [type] as instantiated. | 429   /// Registers [type] as instantiated. | 
| 424   void registerInstantiatedType(InterfaceType type); | 430   void registerInstantiatedType(InterfaceType type); | 
| 425 | 431 | 
| 426   /// Resolves [typeName] to a type in the context of [node]. | 432   /// Resolves [typeName] to a type in the context of [node]. | 
| 427   DartType resolveTypeFromString(Node node, String typeName); | 433   DartType resolveTypeFromString(Node node, String typeName); | 
| 428 } | 434 } | 
| 429 | 435 | 
| 430 /// Backend transformation methods for the world impacts. | 436 /// Backend transformation methods for the world impacts. | 
| 431 class ImpactTransformer { | 437 class ImpactTransformer { | 
| 432   /// Transform the [ResolutionImpact] into a [WorldImpact] adding the | 438   /// Transform the [ResolutionImpact] into a [WorldImpact] adding the | 
| 433   /// backend dependencies for features used in [worldImpact]. | 439   /// backend dependencies for features used in [worldImpact]. | 
| 434   WorldImpact transformResolutionImpact(ResolutionImpact worldImpact) { | 440   WorldImpact transformResolutionImpact(ResolutionImpact worldImpact) { | 
| 435     return worldImpact; | 441     return worldImpact; | 
| 436   } | 442   } | 
| 437 | 443 | 
| 438   /// Transform the [CodegenImpact] into a [WorldImpact] adding the | 444   /// Transform the [CodegenImpact] into a [WorldImpact] adding the | 
| 439   /// backend dependencies for features used in [worldImpact]. | 445   /// backend dependencies for features used in [worldImpact]. | 
| 440   WorldImpact transformCodegenImpact(CodegenImpact worldImpact) { | 446   WorldImpact transformCodegenImpact(CodegenImpact worldImpact) { | 
| 441     return worldImpact; | 447     return worldImpact; | 
| 442   } | 448   } | 
| 443 } | 449 } | 
| OLD | NEW | 
|---|