package sk.stuba.fiit.perconik.core.java.dom;
import javax.annotation.Nullable;
import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.dom.ASTNode;
import org.eclipse.jdt.core.dom.CompilationUnit;
import sk.stuba.fiit.perconik.eclipse.jdt.core.dom.NodeType;
public final class CompilationUnits {
private CompilationUnits() {}
public static CompilationUnit valueOf(@Nullable final ASTNode node) {
return (CompilationUnit) Nodes.firstDownToRoot(node, NodeFilters.isMatching(NodeType.COMPILATION_UNIT));
}
public static IJavaElement element(@Nullable final CompilationUnit unit) {
return unit != null ? unit.getJavaElement() : null;
}
public static IJavaElement element(@Nullable final ASTNode node) {
return element(valueOf(node));
}
}