| Index: dart/compiler/java/com/google/dart/compiler/resolver/ClassScope.java
|
| diff --git a/dart/compiler/java/com/google/dart/compiler/resolver/ClassScope.java b/dart/compiler/java/com/google/dart/compiler/resolver/ClassScope.java
|
| deleted file mode 100644
|
| index e5c393ffdc3e6f2f96c8a2ff9f67e13ce0a36513..0000000000000000000000000000000000000000
|
| --- a/dart/compiler/java/com/google/dart/compiler/resolver/ClassScope.java
|
| +++ /dev/null
|
| @@ -1,93 +0,0 @@
|
| -// Copyright (c) 2011, 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.
|
| -
|
| -package com.google.dart.compiler.resolver;
|
| -
|
| -import com.google.dart.compiler.type.InterfaceType;
|
| -
|
| -import java.util.HashSet;
|
| -import java.util.List;
|
| -import java.util.Set;
|
| -
|
| -/**
|
| - * Lexical scope corresponding to a class body.
|
| - */
|
| -class ClassScope extends Scope {
|
| - private final ClassElement classElement;
|
| -
|
| - ClassScope(ClassElement classElement, Scope parent) {
|
| - super(classElement.getName(), parent.getLibrary(), parent);
|
| - this.classElement = classElement;
|
| - }
|
| -
|
| - @Override
|
| - public Element declareElement(String name, Element element) {
|
| - throw new AssertionError("not supported yet");
|
| - }
|
| -
|
| - @Override
|
| - public Element findElement(LibraryElement inLibrary, String name) {
|
| - return findElement(inLibrary, name, new HashSet<ClassElement>());
|
| - }
|
| -
|
| - protected Element findElement(LibraryElement inLibrary, String name, Set<ClassElement> examinedTypes) {
|
| - Element element = super.findElement(inLibrary, name);
|
| - if (element != null) {
|
| - return element;
|
| - }
|
| - examinedTypes.add(classElement);
|
| - InterfaceType superclass = classElement.getSupertype();
|
| - if (superclass != null) {
|
| - Element enclosing = superclass.getElement().getEnclosingElement();
|
| - ClassElement superclassElement = superclass.getElement();
|
| - if (!examinedTypes.contains(superclassElement)) {
|
| - ClassScope scope = new ClassScope(superclassElement,
|
| - new Scope("library", (LibraryElement) enclosing));
|
| - element = scope.findElement(inLibrary, name, examinedTypes);
|
| - switch (ElementKind.of(element)) {
|
| - case TYPE_VARIABLE:
|
| - return null;
|
| - case NONE:
|
| - break;
|
| - default:
|
| - return element;
|
| - }
|
| - }
|
| - }
|
| -
|
| - List<InterfaceType> interfaces = classElement.getInterfaces();
|
| - for (int i = 0, size = interfaces.size(); i < size; i++) {
|
| - InterfaceType intf = interfaces.get(i);
|
| - ClassElement intfElement = intf.getElement();
|
| - if (!examinedTypes.contains(intfElement)) {
|
| - Element enclosing = intf.getElement().getEnclosingElement();
|
| - ClassScope scope = new ClassScope(intfElement,
|
| - new Scope("library", (LibraryElement) enclosing));
|
| - element = scope.findElement(inLibrary, name, examinedTypes);
|
| - if (element != null) {
|
| - return element;
|
| - }
|
| - }
|
| - }
|
| -
|
| - List<InterfaceType> mixins = classElement.getMixins();
|
| - for (int i = 0, size = mixins.size(); i < size; i++) {
|
| - InterfaceType mixin = mixins.get(i);
|
| - ClassElement mixinElement = mixin.getElement();
|
| - if (!examinedTypes.contains(mixinElement)) {
|
| - MixinScope scope = new MixinScope(mixinElement);
|
| - element = scope.findElement(inLibrary, name);
|
| - if (element != null) {
|
| - return element;
|
| - }
|
| - }
|
| - }
|
| - return null;
|
| - }
|
| -
|
| - @Override
|
| - public Element findLocalElement(String name) {
|
| - return Elements.findElement(classElement, name);
|
| - }
|
| -}
|
|
|