| 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..7380911b17418fa31a2dc54b99251916134f84e2 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 target specific library whose members
|
| + /// 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.
|
|
|