| Index: dart/compiler/java/com/google/dart/compiler/resolver/TypeVariableElementImplementation.java
|
| diff --git a/dart/compiler/java/com/google/dart/compiler/resolver/TypeVariableElementImplementation.java b/dart/compiler/java/com/google/dart/compiler/resolver/TypeVariableElementImplementation.java
|
| deleted file mode 100644
|
| index 62c1a010bf72a43ecdb45a31b5703d8e1dd800fb..0000000000000000000000000000000000000000
|
| --- a/dart/compiler/java/com/google/dart/compiler/resolver/TypeVariableElementImplementation.java
|
| +++ /dev/null
|
| @@ -1,88 +0,0 @@
|
| -// 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.
|
| -
|
| -package com.google.dart.compiler.resolver;
|
| -
|
| -import com.google.dart.compiler.ast.DartTypeNode;
|
| -import com.google.dart.compiler.ast.DartTypeParameter;
|
| -import com.google.dart.compiler.type.Type;
|
| -import com.google.dart.compiler.type.TypeVariable;
|
| -import com.google.dart.compiler.type.Types;
|
| -
|
| -/**
|
| - * Representation of a type variable.
|
| - *
|
| - * <p>
|
| - * For example, in {@code class Foo<T> ... } , {@code T} is a type variable.
|
| - */
|
| -class TypeVariableElementImplementation extends AbstractNodeElement implements TypeVariableNodeElement {
|
| -
|
| - private final EnclosingElement owner;
|
| - private TypeVariable type;
|
| - private Type bound;
|
| - private final DartTypeNode boundNode;
|
| -
|
| - TypeVariableElementImplementation(String name, Type bound) {
|
| - this(null, name, null);
|
| - this.bound = bound;
|
| - }
|
| -
|
| - TypeVariableElementImplementation(DartTypeParameter node, String name, EnclosingElement owner) {
|
| - super(node, name);
|
| - this.owner = owner;
|
| - this.boundNode = node != null ? node.getBound() : null;
|
| - }
|
| -
|
| - @Override
|
| - public TypeVariable getType() {
|
| - return type;
|
| - }
|
| -
|
| - @Override
|
| - public ElementKind getKind() {
|
| - return ElementKind.TYPE_VARIABLE;
|
| - }
|
| -
|
| - static TypeVariableElementImplementation fromNode(DartTypeParameter node, EnclosingElement owner) {
|
| - TypeVariableElementImplementation element =
|
| - new TypeVariableElementImplementation(node, node.getName().getName(), owner);
|
| - element.setType(Types.typeVariable(element));
|
| - return element;
|
| - }
|
| -
|
| - @Override
|
| - public TypeVariable getTypeVariable() {
|
| - return getType();
|
| - }
|
| -
|
| - @Override
|
| - void setType(Type type) {
|
| - this.type = (TypeVariable) type;
|
| - }
|
| -
|
| - @Override
|
| - public Type getBound() {
|
| - if (boundNode != null) {
|
| - return boundNode.getType();
|
| - }
|
| - // no explicit bound, try to get Object
|
| - if (bound == null) {
|
| - if (owner instanceof ClassElement) {
|
| - Scope libraryScope = ((ClassElement) owner).getLibrary().getScope();
|
| - bound = libraryScope.findElement(null, "Object").getType();
|
| - }
|
| - }
|
| - return bound;
|
| - }
|
| -
|
| - @Override
|
| - public Element getDeclaringElement() {
|
| - return owner;
|
| - }
|
| -
|
| - @Override
|
| - public EnclosingElement getEnclosingElement() {
|
| - return owner;
|
| - }
|
| -}
|
|
|