com.google.javascript.jscomp.deps
Class SortedDependencies<INPUT extends DependencyInfo>
java.lang.Object
com.google.javascript.jscomp.deps.SortedDependencies<INPUT>
public class SortedDependencies<INPUT extends DependencyInfo>
- extends Object
A sorted list of inputs with dependency information. Uses a stable
topological sort to make sure that an input always comes after its
dependencies.
Also exposes other information about the inputs, like which inputs
do not provide symbols.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SortedDependencies
public SortedDependencies(List<INPUT> inputs)
throws SortedDependencies.CircularDependencyException
- Throws:
SortedDependencies.CircularDependencyException
getInputProviding
public INPUT getInputProviding(String symbol)
throws SortedDependencies.MissingProvideException
- Return the input that gives us the given symbol.
- Throws:
SortedDependencies.MissingProvideException - An exception if there is no
input for this symbol.
getSortedList
public List<INPUT> getSortedList()
getSortedDependenciesOf
public List<INPUT> getSortedDependenciesOf(List<INPUT> roots)
- Gets all the dependencies of the given roots. The inputs must be returned
in a stable order. In other words, if A comes before B, and A does not
transitively depend on B, then A must also come before B in the returned
list.
getInputsWithoutProvides
public List<INPUT> getInputsWithoutProvides()