LightClassUtil: files can no longer "belong to builtIns"

This commit is contained in:
Pavel V. Talanov
2015-12-15 14:54:00 +03:00
parent bd9221beaa
commit 8d5d1b7dcc
6 changed files with 11 additions and 110 deletions
@@ -23,7 +23,6 @@ import com.intellij.openapi.project.Project
import com.intellij.psi.PsiElement
import com.intellij.psi.util.PsiTreeUtil
import org.jetbrains.kotlin.analyzer.AnalysisResult
import org.jetbrains.kotlin.asJava.LightClassUtil
import org.jetbrains.kotlin.container.ComponentProvider
import org.jetbrains.kotlin.container.get
import org.jetbrains.kotlin.context.GlobalContext
@@ -153,7 +152,7 @@ private object KotlinResolveDataProvider {
}
val file = analyzableElement.getContainingKtFile()
if (LightClassUtil.belongsToKotlinBuiltIns(file) || file.getModuleInfo() is LibrarySourceInfo) {
if (file.getModuleInfo() is LibrarySourceInfo) {
// Library sources: mark file to skip
file.putUserData(LibrarySourceHacks.SKIP_TOP_LEVEL_MEMBERS, true)
}
@@ -365,16 +365,14 @@ public class SourceNavigationHelper {
@Nullable
public static PsiClass getOriginalPsiClassOrCreateLightClass(@NotNull KtClassOrObject classOrObject) {
if (LightClassUtil.INSTANCE$.belongsToKotlinBuiltIns(classOrObject.getContainingKtFile())) {
FqName fqName = classOrObject.getFqName();
if (fqName != null) {
ClassId javaClassId = JavaToKotlinClassMap.INSTANCE.mapKotlinToJava(fqName.toUnsafe());
if (javaClassId != null) {
return JavaPsiFacade.getInstance(classOrObject.getProject()).findClass(
javaClassId.asSingleFqName().asString(),
GlobalSearchScope.allScope(classOrObject.getProject())
);
}
FqName fqName = classOrObject.getFqName();
if (fqName != null) {
ClassId javaClassId = JavaToKotlinClassMap.INSTANCE.mapKotlinToJava(fqName.toUnsafe());
if (javaClassId != null) {
return JavaPsiFacade.getInstance(classOrObject.getProject()).findClass(
javaClassId.asSingleFqName().asString(),
GlobalSearchScope.allScope(classOrObject.getProject())
);
}
}
return LightClassUtil.INSTANCE$.getPsiClass(classOrObject);