Don't rely on hardcoded file extensions.
This commit is contained in:
@@ -3,6 +3,8 @@ package org.jetbrains.jet.plugin.compiler;
|
|||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
import com.intellij.openapi.application.ApplicationManager;
|
import com.intellij.openapi.application.ApplicationManager;
|
||||||
import com.intellij.openapi.compiler.ex.CompilerPathsEx;
|
import com.intellij.openapi.compiler.ex.CompilerPathsEx;
|
||||||
|
import com.intellij.openapi.fileTypes.FileType;
|
||||||
|
import com.intellij.openapi.fileTypes.FileTypeManager;
|
||||||
import com.intellij.openapi.project.Project;
|
import com.intellij.openapi.project.Project;
|
||||||
import com.intellij.openapi.roots.ProjectRootManager;
|
import com.intellij.openapi.roots.ProjectRootManager;
|
||||||
import com.intellij.openapi.vfs.VirtualFile;
|
import com.intellij.openapi.vfs.VirtualFile;
|
||||||
@@ -14,6 +16,7 @@ import org.jetbrains.jet.lang.psi.JetDeclaration;
|
|||||||
import org.jetbrains.jet.lang.psi.JetFile;
|
import org.jetbrains.jet.lang.psi.JetFile;
|
||||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||||
import org.jetbrains.jet.lang.resolve.java.AnalyzerFacade;
|
import org.jetbrains.jet.lang.resolve.java.AnalyzerFacade;
|
||||||
|
import org.jetbrains.jet.plugin.JetFileType;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@@ -34,7 +37,8 @@ public class WholeProjectAnalyzerFacade {
|
|||||||
CompilerPathsEx.visitFiles(contentRoots, new CompilerPathsEx.FileVisitor() {
|
CompilerPathsEx.visitFiles(contentRoots, new CompilerPathsEx.FileVisitor() {
|
||||||
@Override
|
@Override
|
||||||
protected void acceptFile(VirtualFile file, String fileRoot, String filePath) {
|
protected void acceptFile(VirtualFile file, String fileRoot, String filePath) {
|
||||||
if (!(file.getName().endsWith(".kt") || file.getName().endsWith(".kts"))) return;
|
final FileType fileType = FileTypeManager.getInstance().getFileTypeByFile(file);
|
||||||
|
if (fileType != JetFileType.INSTANCE) return;
|
||||||
PsiFile psiFile = PsiManager.getInstance(project).findFile(file);
|
PsiFile psiFile = PsiManager.getInstance(project).findFile(file);
|
||||||
if (psiFile instanceof JetFile) {
|
if (psiFile instanceof JetFile) {
|
||||||
namespaces.add(((JetFile) psiFile).getRootNamespace());
|
namespaces.add(((JetFile) psiFile).getRootNamespace());
|
||||||
|
|||||||
Reference in New Issue
Block a user