de.mguennewig.pobjimport
Class DependencySorter
java.lang.Object
de.mguennewig.pobjimport.DependencySorter
- All Implemented Interfaces:
- java.util.Comparator<ClassDecl>
public class DependencySorter
- extends java.lang.Object
- implements java.util.Comparator<ClassDecl>
A comparator that sorts based on the amount of dependencies a ClassDecl has.
- Author:
- Michael Günnewig
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.util.Comparator |
equals |
DependencySorter
public DependencySorter(java.util.Map<ClassDecl,java.util.Collection<ClassDecl>> tables,
boolean failOnCircle)
compare
public int compare(ClassDecl te1,
ClassDecl te2)
- Specified by:
compare in interface java.util.Comparator<ClassDecl>
sortByDependency
public static java.util.Set<ClassDecl> sortByDependency(Module module,
boolean failOnCircle)
- Returns a set of materliazed classes sorted by dependency (base first,
subclasses later).
- Throws:
java.lang.IllegalStateException - if a (possible) circular dependency has been
detected.
getDependencies
public static java.util.Collection<ClassDecl> getDependencies(ClassDecl te)
sortKeys
public static java.util.Map<ClassDecl,java.util.Collection<ClassDecl>> sortKeys(java.util.Map<ClassDecl,java.util.Collection<ClassDecl>> tables,
boolean failOnCircle)