Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Unified Diff: dart/compiler/java/com/google/dart/compiler/ast/LibraryUnit.java

Issue 20722006: Removed compiler/ directory from repository (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: dart/compiler/java/com/google/dart/compiler/ast/LibraryUnit.java
diff --git a/dart/compiler/java/com/google/dart/compiler/ast/LibraryUnit.java b/dart/compiler/java/com/google/dart/compiler/ast/LibraryUnit.java
deleted file mode 100644
index 9700c84059eec404b3d478e51665a84a624d9b80..0000000000000000000000000000000000000000
--- a/dart/compiler/java/com/google/dart/compiler/ast/LibraryUnit.java
+++ /dev/null
@@ -1,314 +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.ast;
-
-import com.google.common.base.Objects;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
-import com.google.dart.compiler.DartCompiler;
-import com.google.dart.compiler.DartCompilerContext;
-import com.google.dart.compiler.DartSource;
-import com.google.dart.compiler.LibraryDeps;
-import com.google.dart.compiler.LibrarySource;
-import com.google.dart.compiler.resolver.Elements;
-import com.google.dart.compiler.resolver.LibraryElement;
-
-import java.io.IOException;
-import java.io.Reader;
-import java.io.Writer;
-import java.util.Collection;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.ConcurrentSkipListMap;
-
-/**
- * Represents the parsed source from a {@link LibrarySource}.
- */
-public class LibraryUnit {
- private final LibrarySource libSource;
- private final LibraryNode selfSourcePath;
- private final List<LibraryNode> importPaths = Lists.newArrayList();
- private final List<LibraryNode> exportPaths = Lists.newArrayList();
- private final List<LibraryNode> sourcePaths = Lists.newArrayList();
- private final List<LibraryNode> nativePaths = Lists.newArrayList();
-
- private final Map<String, DartUnit> units = new ConcurrentSkipListMap<String, DartUnit>();
- private final List<LibraryImport> imports = Lists.newArrayList();
- private final List<LibraryExport> exports = Lists.newArrayList();
-
- private final LibraryElement element;
-
- private LibraryDeps deps;
-
- private LibraryNode entryNode;
- private DartUnit selfDartUnit;
-
- private String name;
-
- private DartExpression entryPoint;
-
- private int sourceCount;
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getName() {
- return name;
- }
-
- public LibraryUnit(LibrarySource libSource) {
- assert libSource != null;
- this.libSource = libSource;
- element = Elements.libraryElement(this);
-
- // get the name part of the path, since it needs to be relative
- // TODO(jbrosenberg): change this to use lazy init
- // Note: We don't want an encoded relative path.
- String self = libSource.getUri().getSchemeSpecificPart();
- int lastSlash;
- if ((lastSlash = self.lastIndexOf('/')) > -1) {
- self = self.substring(lastSlash + 1);
- }
- selfSourcePath = new LibraryNode(self);
- }
-
- public void addImportPath(LibraryNode path) {
- assert path != null;
- importPaths.add(path);
- }
-
- public void addExportPath(LibraryNode path) {
- assert path != null;
- exportPaths.add(path);
- }
-
- public void addSourcePath(LibraryNode path) {
- assert path != null;
- sourcePaths.add(path);
- sourceCount++;
- }
-
- public int getSourceCount() {
- return sourceCount;
- }
-
- public void addNativePath(LibraryNode path) {
- assert path != null;
- nativePaths.add(path);
- }
-
- public void putUnit(DartUnit unit) {
- unit.setLibrary(this);
- units.put(unit.getSourceName(), unit);
- }
-
- public DartUnit getUnit(String sourceName) {
- return units.get(sourceName);
- }
-
- public void addImport(LibraryUnit unit, LibraryNode node) {
- if (unit != null) {
- if (node != null) {
- imports.add(new LibraryImport(unit, node.getPrefix(), node.getCombinators()));
- } else {
- imports.add(new LibraryImport(unit, null, ImmutableList.<ImportCombinator> of()));
- }
- }
- }
-
- public void addExport(LibraryUnit unit, LibraryNode node) {
- if (unit != null) {
- if (node != null) {
- exports.add(new LibraryExport(node.getSourceInfo(), unit, node.getCombinators()));
- }
- }
- }
-
- public Collection<LibraryUnit> getLibrariesWithPrefix(String prefixToMatch) {
- List<LibraryUnit> result = Lists.newArrayList();
- for (LibraryImport libraryImport : imports) {
- if (Objects.equal(libraryImport.getPrefix(), prefixToMatch)) {
- result.add(libraryImport.getLibrary());
- }
- }
- return result;
- }
-
- public LibraryElement getElement() {
- return element;
- }
-
- public Iterable<DartUnit> getUnits() {
- return units.values();
- }
-
- public Iterable<LibraryImport> getImports() {
- return imports;
- }
-
- public List<LibraryExport> getExports() {
- return exports;
- }
-
- public Iterable<LibraryUnit> getImportedLibraries() {
- LinkedHashSet<LibraryUnit> libraries = Sets.newLinkedHashSet();
- for (LibraryImport libraryImport : imports) {
- libraries.add(libraryImport.getLibrary());
- }
- return libraries;
- }
-
- public boolean hasImport(LibraryUnit unit) {
- for (LibraryImport libraryImport : imports) {
- if (libraryImport.getPrefix() == null && Objects.equal(libraryImport.getLibrary(), unit)) {
- return true;
- }
- }
- return false;
-// return imports.contains(new LibraryImport(unit, null, ImmutableList.<ImportCombinator> of()));
- }
-
- public DartExpression getEntryPoint() {
- return entryPoint;
- }
-
- public void setEntryPoint(DartExpression entry) {
- this.entryPoint = entry;
- }
-
- public DartUnit getSelfDartUnit() {
- return this.selfDartUnit;
- }
-
- public void setSelfDartUnit(DartUnit unit) {
- this.selfDartUnit = unit;
- // set DartObsoleteMetadata for LibraryElement
- if (unit != null) {
- List<DartDirective> directives = unit.getDirectives();
- if (!directives.isEmpty() && directives.get(0) instanceof DartLibraryDirective) {
- DartLibraryDirective libraryDirective = (DartLibraryDirective) directives.get(0);
- Elements.setLibraryMetadata(element, libraryDirective.getObsoleteMetadata());
- }
- }
- }
-
- /**
- * Return a collection of paths to {@link LibrarySource}s upon which this library or application
- * depends.
- *
- * @return the paths (not <code>null</code>, contains no <code>null</code>)
- */
- public Iterable<LibraryNode> getImportPaths() {
- return importPaths;
- }
-
- public Iterable<LibraryNode> getExportPaths() {
- return exportPaths;
- }
-
- /**
- * Return all prefixes used by this library.
- */
- public Set<String> getPrefixes() {
- Set<String> result = Sets.newTreeSet();
- for (LibraryImport libraryImport : imports) {
- String prefix = libraryImport.getPrefix();
- if (prefix != null) {
- result.add(prefix);
- }
- }
- return result;
- }
-
- /**
- * Return the path for dart source that corresponds to the same dart file as this library unit.
- * This is added to the set of sourcePaths for this unit.
- *
- * @return the self source path for this unit.
- */
- public LibraryNode getSelfSourcePath() {
- return selfSourcePath;
- }
-
- /**
- * Answer the source associated with this unit
- *
- * @return the library source (not <code>null</code>)
- */
- public LibrarySource getSource() {
- return libSource;
- }
-
- /**
- * Return a collection of paths to {@link DartSource}s that are included in this library or
- * application.
- *
- * @return the paths (not <code>null</code>, contains no <code>null</code>)
- */
- public Iterable<LibraryNode> getSourcePaths() {
- return sourcePaths;
- }
-
- /**
- * Returns a collection of paths to native {@link DartSource}s that are included in this library.
- *
- * @return the paths (not <code>null</code>, contains no <code>null</code>)
- */
- public Iterable<LibraryNode> getNativePaths() {
- return nativePaths;
- }
-
- /**
- * Return the declared entry method, if any
- *
- * @return the entry method or <code>null</code> if not defined
- */
- public LibraryNode getEntryNode() {
- return entryNode;
- }
-
- /**
- * Set the declared entry method.
- *
- * @param libraryNode the entry method or <code>null</code> if none
- */
- public void setEntryNode(LibraryNode libraryNode) {
- this.entryNode = libraryNode;
- }
-
- /**
- * Gets the dependencies associated with this library. If no dependencies artifact exists, or the
- * file is invalid, it will return an empty deps object.
- */
- public LibraryDeps getDeps(DartCompilerContext context) throws IOException {
- if (deps != null) {
- return deps;
- }
-
- Reader reader = context.getArtifactReader(libSource, "", DartCompiler.EXTENSION_DEPS);
- if (reader != null) {
- deps = LibraryDeps.fromReader(reader);
- reader.close();
- }
-
- if (deps == null) {
- deps = new LibraryDeps();
- }
- return deps;
- }
-
- /**
- * Writes this library's associated dependencies.
- */
- public void writeDeps(DartCompilerContext context) throws IOException {
- Writer writer = context.getArtifactWriter(libSource, "", DartCompiler.EXTENSION_DEPS);
- deps.write(writer);
- writer.close();
- }
-}

Powered by Google App Engine
This is Rietveld 408576698