Chromium Code Reviews| Index: pkg/compiler/lib/src/common/resolution.dart |
| diff --git a/pkg/compiler/lib/src/common/resolution.dart b/pkg/compiler/lib/src/common/resolution.dart |
| index 53f619042418b729697c1ce08e39b114cc2c1e28..73c1b04d457c4db02e19b9a80f387fd8b39abce2 100644 |
| --- a/pkg/compiler/lib/src/common/resolution.dart |
| +++ b/pkg/compiler/lib/src/common/resolution.dart |
| @@ -7,8 +7,8 @@ library dart2js.common.resolution; |
| import '../common.dart'; |
| import '../compiler.dart' show Compiler; |
| import '../constants/expressions.dart' show ConstantExpression; |
| -import '../core_types.dart' show CoreTypes; |
| -import '../dart_types.dart' show DartType, InterfaceType; |
| +import '../core_types.dart' show CoreClasses, CoreTypes; |
| +import '../dart_types.dart' show DartType, InterfaceType, Types; |
| import '../elements/elements.dart' |
| show |
| AstElement, |
| @@ -17,6 +17,7 @@ import '../elements/elements.dart' |
| ExecutableElement, |
| FunctionElement, |
| FunctionSignature, |
| + LibraryElement, |
| MetadataAnnotation, |
| ResolvedAst, |
| TypedefElement; |
| @@ -195,11 +196,22 @@ abstract class Frontend { |
| ResolutionImpact getResolutionImpact(Element element); |
| } |
| +/// Interface defining target-specific behavior for resolution. |
| +abstract class Target { |
| + /// Returns `true` if [library] is a backend specific library whose members |
|
Siggi Cherem (dart-lang)
2016/05/20 21:17:53
a backend specific => a target specific :)
Johnni Winther
2016/05/23 08:42:36
Done.
|
| + /// have special treatment, such as being allowed to extends blacklisted |
| + /// classes or members being eagerly resolved. |
| + bool isTargetSpecificLibrary(LibraryElement element); |
| +} |
| + |
| // TODO(johnniwinther): Rename to `Resolver` or `ResolverContext`. |
| abstract class Resolution implements Frontend { |
| ParsingContext get parsingContext; |
| DiagnosticReporter get reporter; |
| + CoreClasses get coreClasses; |
| CoreTypes get coreTypes; |
| + Types get types; |
| + Target get target; |
| /// If set to `true` resolution caches will not be cleared. Use this only for |
| /// testing. |