| Index: pkg/compiler/lib/src/mirrors/dart2js_member_mirrors.dart
|
| diff --git a/pkg/compiler/lib/src/mirrors/dart2js_member_mirrors.dart b/pkg/compiler/lib/src/mirrors/dart2js_member_mirrors.dart
|
| deleted file mode 100644
|
| index 82785255d8fa3c8794de5a1e7777821b26d83a8d..0000000000000000000000000000000000000000
|
| --- a/pkg/compiler/lib/src/mirrors/dart2js_member_mirrors.dart
|
| +++ /dev/null
|
| @@ -1,227 +0,0 @@
|
| -// Copyright (c) 2013, 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.
|
| -
|
| -part of dart2js.mirrors;
|
| -
|
| -//------------------------------------------------------------------------------
|
| -// Member mirrors implementation.
|
| -//------------------------------------------------------------------------------
|
| -
|
| -abstract class Dart2JsMemberMirror extends Dart2JsElementMirror {
|
| - Dart2JsMemberMirror(Dart2JsMirrorSystem system, AstElement element)
|
| - : super(system, element);
|
| -
|
| - bool get isStatic => false;
|
| -}
|
| -
|
| -class Dart2JsMethodKind {
|
| - static const Dart2JsMethodKind REGULAR = const Dart2JsMethodKind("regular");
|
| - static const Dart2JsMethodKind GENERATIVE =
|
| - const Dart2JsMethodKind("generative");
|
| - static const Dart2JsMethodKind REDIRECTING =
|
| - const Dart2JsMethodKind("redirecting");
|
| - static const Dart2JsMethodKind CONST = const Dart2JsMethodKind("const");
|
| - static const Dart2JsMethodKind FACTORY = const Dart2JsMethodKind("factory");
|
| - static const Dart2JsMethodKind GETTER = const Dart2JsMethodKind("getter");
|
| - static const Dart2JsMethodKind SETTER = const Dart2JsMethodKind("setter");
|
| - static const Dart2JsMethodKind OPERATOR = const Dart2JsMethodKind("operator");
|
| -
|
| - final String text;
|
| -
|
| - const Dart2JsMethodKind(this.text);
|
| -
|
| - String toString() => text;
|
| -}
|
| -
|
| -class Dart2JsMethodMirror extends Dart2JsMemberMirror implements MethodMirror {
|
| - final Dart2JsDeclarationMirror owner;
|
| - final String _simpleNameString;
|
| - final Dart2JsMethodKind _kind;
|
| -
|
| - Dart2JsMethodMirror._internal(
|
| - Dart2JsDeclarationMirror owner,
|
| - FunctionElement function,
|
| - String this._simpleNameString,
|
| - Dart2JsMethodKind this._kind)
|
| - : this.owner = owner,
|
| - super(owner.mirrorSystem, function);
|
| -
|
| - factory Dart2JsMethodMirror(
|
| - Dart2JsDeclarationMirror owner, FunctionElement function) {
|
| - String simpleName = function.name;
|
| - // TODO(ahe): This method should not be calling
|
| - // Elements.operatorNameToIdentifier.
|
| - Dart2JsMethodKind kind;
|
| - if (function.kind == ElementKind.GETTER) {
|
| - kind = Dart2JsMethodKind.GETTER;
|
| - } else if (function.kind == ElementKind.SETTER) {
|
| - kind = Dart2JsMethodKind.SETTER;
|
| - simpleName = '$simpleName=';
|
| - } else if (function.kind == ElementKind.GENERATIVE_CONSTRUCTOR) {
|
| - // TODO(johnniwinther): Support detection of redirecting constructors.
|
| - if (function.isConst) {
|
| - kind = Dart2JsMethodKind.CONST;
|
| - } else {
|
| - kind = Dart2JsMethodKind.GENERATIVE;
|
| - }
|
| - } else if (function.isFactoryConstructor) {
|
| - // TODO(johnniwinther): Support detection of redirecting constructors.
|
| - kind = Dart2JsMethodKind.FACTORY;
|
| - } else if (function.isOperator) {
|
| - kind = Dart2JsMethodKind.OPERATOR;
|
| - } else {
|
| - kind = Dart2JsMethodKind.REGULAR;
|
| - }
|
| - return new Dart2JsMethodMirror._internal(owner, function, simpleName, kind);
|
| - }
|
| -
|
| - FunctionElement get _function => _element;
|
| -
|
| - bool get isTopLevel => owner is LibraryMirror;
|
| -
|
| - // TODO(johnniwinther): This seems stale and broken.
|
| - Symbol get constructorName => isConstructor ? simpleName : const Symbol('');
|
| -
|
| - bool get isConstructor =>
|
| - isGenerativeConstructor ||
|
| - isConstConstructor ||
|
| - isFactoryConstructor ||
|
| - isRedirectingConstructor;
|
| -
|
| - bool get isSynthetic => false;
|
| -
|
| - bool get isStatic => _function.isStatic;
|
| -
|
| - List<ParameterMirror> get parameters {
|
| - return _parametersFromFunctionSignature(this, _function.functionSignature);
|
| - }
|
| -
|
| - TypeMirror get returnType =>
|
| - owner._getTypeMirror(_function.functionSignature.type.returnType);
|
| -
|
| - bool get isAbstract => _function.isAbstract;
|
| -
|
| - bool get isRegularMethod => !(isGetter || isSetter || isConstructor);
|
| -
|
| - bool get isConstConstructor => _kind == Dart2JsMethodKind.CONST;
|
| -
|
| - bool get isGenerativeConstructor => _kind == Dart2JsMethodKind.GENERATIVE;
|
| -
|
| - bool get isRedirectingConstructor => _kind == Dart2JsMethodKind.REDIRECTING;
|
| -
|
| - bool get isFactoryConstructor => _kind == Dart2JsMethodKind.FACTORY;
|
| -
|
| - bool get isGetter => _kind == Dart2JsMethodKind.GETTER;
|
| -
|
| - bool get isSetter => _kind == Dart2JsMethodKind.SETTER;
|
| -
|
| - bool get isOperator => _kind == Dart2JsMethodKind.OPERATOR;
|
| -
|
| - DeclarationMirror lookupInScope(String name) {
|
| - for (Dart2JsParameterMirror parameter in parameters) {
|
| - if (parameter._element.name == name) {
|
| - return parameter;
|
| - }
|
| - }
|
| - return super.lookupInScope(name);
|
| - }
|
| -
|
| - // TODO(johnniwinther): Should this really be in the interface of
|
| - // [MethodMirror]?
|
| - String get source => location.sourceText;
|
| -
|
| - String toString() => 'Mirror on method ${_element.name}';
|
| -}
|
| -
|
| -class Dart2JsFieldMirror extends Dart2JsMemberMirror implements VariableMirror {
|
| - final Dart2JsDeclarationMirror owner;
|
| - VariableElement _variable;
|
| -
|
| - Dart2JsFieldMirror(Dart2JsDeclarationMirror owner, VariableElement variable)
|
| - : this.owner = owner,
|
| - this._variable = variable,
|
| - super(owner.mirrorSystem, variable);
|
| -
|
| - bool get isTopLevel => owner is LibraryMirror;
|
| -
|
| - bool get isStatic => _variable.isStatic;
|
| -
|
| - bool get isFinal => _variable.isFinal;
|
| -
|
| - bool get isConst => _variable.isConst;
|
| -
|
| - TypeMirror get type => owner._getTypeMirror(_variable.type);
|
| -}
|
| -
|
| -class Dart2JsParameterMirror extends Dart2JsMemberMirror
|
| - implements ParameterMirror {
|
| - final Dart2JsDeclarationMirror owner;
|
| - final bool isOptional;
|
| - final bool isNamed;
|
| -
|
| - factory Dart2JsParameterMirror(
|
| - Dart2JsDeclarationMirror owner, FormalElement element,
|
| - {bool isOptional: false, bool isNamed: false}) {
|
| - if (element is InitializingFormalElement) {
|
| - return new Dart2JsFieldParameterMirror(
|
| - owner, element, isOptional, isNamed);
|
| - } else {
|
| - return new Dart2JsParameterMirror._normal(
|
| - owner, element, isOptional, isNamed);
|
| - }
|
| - }
|
| -
|
| - Dart2JsParameterMirror._normal(Dart2JsDeclarationMirror owner,
|
| - FormalElement element, this.isOptional, this.isNamed)
|
| - : this.owner = owner,
|
| - super(owner.mirrorSystem, element);
|
| -
|
| - FormalElement get _element => super._element;
|
| -
|
| - TypeMirror get type => owner._getTypeMirror(_element.type);
|
| -
|
| - bool get isFinal => false;
|
| -
|
| - bool get isConst => false;
|
| -
|
| - InstanceMirror get defaultValue {
|
| - if (hasDefaultValue) {
|
| - // TODO(johnniwinther): Get the constant from the [TreeElements]
|
| - // associated with the enclosing method.
|
| - ParameterElement parameter = _element;
|
| - ConstantExpression constant = parameter.constant;
|
| - assert(invariant(parameter, constant != null,
|
| - message: "Missing constant for parameter "
|
| - "$parameter with default value."));
|
| - return _convertConstantToInstanceMirror(mirrorSystem, constant,
|
| - mirrorSystem.compiler.constants.getConstantValue(constant));
|
| - }
|
| - return null;
|
| - }
|
| -
|
| - bool get hasDefaultValue {
|
| - if (_element is ParameterElement) {
|
| - ParameterElement parameter = _element;
|
| - return parameter.initializer != null;
|
| - }
|
| - return false;
|
| - }
|
| -
|
| - bool get isInitializingFormal => false;
|
| -
|
| - VariableMirror get initializedField => null;
|
| -}
|
| -
|
| -class Dart2JsFieldParameterMirror extends Dart2JsParameterMirror {
|
| - Dart2JsFieldParameterMirror(Dart2JsDeclarationMirror method,
|
| - InitializingFormalElement element, bool isOptional, bool isNamed)
|
| - : super._normal(method, element, isOptional, isNamed);
|
| -
|
| - InitializingFormalElement get _fieldParameterElement => _element;
|
| -
|
| - bool get isInitializingFormal => true;
|
| -
|
| - VariableMirror get initializedField =>
|
| - new Dart2JsFieldMirror(owner.owner, _fieldParameterElement.fieldElement);
|
| -}
|
|
|