| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| library dart2js.common.registry; |
| |
| import '../dart_types.dart' show |
| InterfaceType; |
| import '../elements/elements.dart' show |
| Element, |
| FunctionElement; |
| import '../universe/universe.dart' show |
| UniverseSelector; |
| |
| /// Interface for registration of element dependencies. |
| abstract class Registry { |
| // TODO(johnniwinther): Remove this. |
| void registerDependency(Element element) {} |
| |
| bool get isForResolution; |
| |
| void registerDynamicInvocation(UniverseSelector selector); |
| |
| void registerDynamicGetter(UniverseSelector selector); |
| |
| void registerDynamicSetter(UniverseSelector selector); |
| |
| void registerStaticInvocation(Element element); |
| |
| void registerInstantiation(InterfaceType type); |
| |
| void registerGetOfStaticFunction(FunctionElement element); |
| } |