Minor, JavaClass#getOriginKind -> isKotlinLightClass
This commit is contained in:
@@ -24,6 +24,7 @@ import com.intellij.psi.search.DelegatingGlobalSearchScope;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.kotlin.asJava.KtJavaMirrorMarker;
|
||||
import org.jetbrains.kotlin.idea.KotlinFileType;
|
||||
import org.jetbrains.kotlin.load.java.structure.JavaClass;
|
||||
import org.jetbrains.kotlin.load.java.structure.JavaPackage;
|
||||
@@ -96,7 +97,7 @@ public class JavaClassFinderImpl implements JavaClassFinder {
|
||||
throw new IllegalStateException("Requested " + fqName + ", got " + javaClass.getFqName());
|
||||
}
|
||||
|
||||
if (javaClass.getOriginKind() == JavaClass.OriginKind.KOTLIN_LIGHT_CLASS) {
|
||||
if (psiClass instanceof KtJavaMirrorMarker) {
|
||||
throw new IllegalStateException("Kotlin light classes should not be found by JavaPsiFacade, resolving: " + fqName);
|
||||
}
|
||||
|
||||
|
||||
+2
-12
@@ -152,18 +152,8 @@ public class JavaClassImpl extends JavaClassifierImpl<PsiClass> implements JavaC
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public OriginKind getOriginKind() {
|
||||
PsiClass psiClass = getPsi();
|
||||
if (psiClass instanceof KtJavaMirrorMarker) {
|
||||
return OriginKind.KOTLIN_LIGHT_CLASS;
|
||||
}
|
||||
else if (psiClass instanceof PsiCompiledElement) {
|
||||
return OriginKind.COMPILED;
|
||||
}
|
||||
else {
|
||||
return OriginKind.SOURCE;
|
||||
}
|
||||
public boolean isKotlinLightClass() {
|
||||
return getPsi() instanceof KtJavaMirrorMarker;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ class LazyJavaPackageFragmentProvider(
|
||||
private inner class FragmentClassResolver : LazyJavaClassResolver {
|
||||
override fun resolveClass(javaClass: JavaClass): ClassDescriptor? {
|
||||
val fqName = javaClass.fqName
|
||||
if (fqName != null && javaClass.originKind == JavaClass.OriginKind.KOTLIN_LIGHT_CLASS) {
|
||||
if (fqName != null && javaClass.isKotlinLightClass) {
|
||||
return c.components.javaResolverCache.getClassResolvedFromSource(fqName)
|
||||
}
|
||||
|
||||
|
||||
+3
-4
@@ -27,7 +27,6 @@ import org.jetbrains.kotlin.load.java.structure.JavaClass
|
||||
import org.jetbrains.kotlin.load.java.structure.JavaPackage
|
||||
import org.jetbrains.kotlin.load.kotlin.header.KotlinClassHeader
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
|
||||
@@ -159,9 +158,9 @@ class LazyJavaPackageScope(
|
||||
// neither objects nor enum members can be in java package
|
||||
if (!kindFilter.acceptsKinds(DescriptorKindFilter.NON_SINGLETON_CLASSIFIERS_MASK)) return listOf()
|
||||
|
||||
return jPackage.getClasses(nameFilter).asSequence()
|
||||
.filter { c -> c.originKind != JavaClass.OriginKind.KOTLIN_LIGHT_CLASS }
|
||||
.map { c -> c.name }.toList()
|
||||
return jPackage.getClasses(nameFilter).mapNotNull { klass ->
|
||||
if (klass.isKotlinLightClass) null else klass.name
|
||||
}
|
||||
}
|
||||
|
||||
override fun getFunctionNames(kindFilter: DescriptorKindFilter, nameFilter: (Name) -> Boolean): Collection<Name> {
|
||||
|
||||
+2
-9
@@ -35,6 +35,8 @@ public interface JavaClass extends JavaClassifier, JavaTypeParameterListOwner, J
|
||||
|
||||
boolean isEnum();
|
||||
|
||||
boolean isKotlinLightClass();
|
||||
|
||||
@Nullable
|
||||
JavaClass getOuterClass();
|
||||
|
||||
@@ -49,13 +51,4 @@ public interface JavaClass extends JavaClassifier, JavaTypeParameterListOwner, J
|
||||
|
||||
@NotNull
|
||||
Collection<JavaConstructor> getConstructors();
|
||||
|
||||
@NotNull
|
||||
OriginKind getOriginKind();
|
||||
|
||||
enum OriginKind {
|
||||
COMPILED,
|
||||
SOURCE,
|
||||
KOTLIN_LIGHT_CLASS
|
||||
}
|
||||
}
|
||||
|
||||
+2
-3
@@ -81,10 +81,9 @@ class ReflectJavaClass(
|
||||
.map(::ReflectJavaConstructor)
|
||||
.toList()
|
||||
|
||||
// TODO: drop OriginKind
|
||||
override fun getOriginKind() = JavaClass.OriginKind.COMPILED
|
||||
override fun isKotlinLightClass() = false
|
||||
|
||||
override fun getName(): Name = Name.identifier(klass.simpleName)
|
||||
override fun getName() = Name.identifier(klass.simpleName)
|
||||
|
||||
override fun getTypeParameters() = klass.typeParameters.map { ReflectJavaTypeParameter(it) }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user