blob: e54c625bfce4586800e592666ed45a63d4e40e2d [file] [log] [blame]
// 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.common.collect.Lists;
import java.util.Collection;
import java.util.List;
class LibraryPrefixElementImplementation extends AbstractNodeElement implements
LibraryPrefixElement {
private final List<LibraryElement> libraries = Lists.newArrayList();
private final Scope scope;
public LibraryPrefixElementImplementation(String name, Scope parent) {
super(null, name);
scope = new Scope("prefix:" + name, parent.getLibrary());
}
@Override
public boolean isInterface() {
return false;
}
@Override
public Scope getScope() {
return scope;
}
@Override
public ElementKind getKind() {
return ElementKind.LIBRARY_PREFIX;
}
@Override
public Collection<Element> getMembers() {
return scope.getElements().values();
}
@Override
public Element lookupLocalElement(String name) {
return scope.findLocalElement(name);
}
public void addLibrary(LibraryElement library) {
libraries.add(library);
}
@Override
public List<LibraryElement> getLibraries() {
return libraries;
}
}