Refactor: get rid of LightClassUtil#getPsiClass() in favor of KtClassOrObject:toLightClass extension
This commit is contained in:
+3
-2
@@ -38,7 +38,7 @@ import gnu.trove.THashSet;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.annotations.TestOnly;
|
||||
import org.jetbrains.kotlin.asJava.LightClassUtil;
|
||||
import org.jetbrains.kotlin.asJava.LightClassUtilsKt;
|
||||
import org.jetbrains.kotlin.builtins.DefaultBuiltIns;
|
||||
import org.jetbrains.kotlin.codegen.binding.PsiCodegenPredictor;
|
||||
import org.jetbrains.kotlin.context.ContextKt;
|
||||
@@ -72,6 +72,7 @@ import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import static org.jetbrains.kotlin.asJava.LightClassUtilsKt.toLightClass;
|
||||
import static org.jetbrains.kotlin.idea.decompiler.navigation.MemberMatching.*;
|
||||
|
||||
public class SourceNavigationHelper {
|
||||
@@ -375,7 +376,7 @@ public class SourceNavigationHelper {
|
||||
);
|
||||
}
|
||||
}
|
||||
return LightClassUtil.INSTANCE.getPsiClass(classOrObject);
|
||||
return toLightClass(classOrObject);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
+6
-7
@@ -16,19 +16,18 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.search.declarationsSearch
|
||||
|
||||
import com.intellij.psi.PsiClass
|
||||
import com.intellij.util.Query
|
||||
import com.intellij.psi.PsiModifier
|
||||
import com.intellij.psi.PsiAnonymousClass
|
||||
import org.jetbrains.kotlin.psi.KtClassOrObject
|
||||
import org.jetbrains.kotlin.asJava.LightClassUtil
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.PsiClass
|
||||
import com.intellij.psi.PsiModifier
|
||||
import com.intellij.psi.search.searches.ClassInheritorsSearch
|
||||
import com.intellij.util.EmptyQuery
|
||||
import com.intellij.util.Query
|
||||
import org.jetbrains.kotlin.asJava.toLightClass
|
||||
import org.jetbrains.kotlin.psi.KtClassOrObject
|
||||
|
||||
fun HierarchySearchRequest<*>.searchInheritors(): Query<PsiClass> {
|
||||
val psiClass: PsiClass? = when (originalElement) {
|
||||
is KtClassOrObject -> LightClassUtil.getPsiClass(originalElement)
|
||||
is KtClassOrObject -> originalElement.toLightClass()
|
||||
is PsiClass -> originalElement
|
||||
else -> null
|
||||
}
|
||||
|
||||
+4
-4
@@ -174,7 +174,7 @@ class KotlinReferencesSearcher : QueryExecutorBase<PsiReference, ReferencesSearc
|
||||
fun processKtClassOrObject(element: KtClassOrObject, queryParameters: ReferencesSearch.SearchParameters) {
|
||||
val className = element.name
|
||||
if (className != null) {
|
||||
val lightClass = runReadAction { LightClassUtil.getPsiClass(element) }
|
||||
val lightClass = runReadAction { element.toLightClass() }
|
||||
if (lightClass != null) {
|
||||
searchNamedElement(queryParameters, lightClass, className)
|
||||
|
||||
@@ -188,7 +188,7 @@ class KotlinReferencesSearcher : QueryExecutorBase<PsiReference, ReferencesSearc
|
||||
if (kotlinReferencesSearchOptions?.acceptCompanionObjectMembers == true) {
|
||||
runReadAction {
|
||||
val originClass = element.getStrictParentOfType<KtClass>()
|
||||
val originLightClass = LightClassUtil.getPsiClass(originClass)
|
||||
val originLightClass = originClass?.toLightClass()
|
||||
if (originLightClass != null) {
|
||||
val lightDeclarations: List<KtLightElement<*, *>?> =
|
||||
originLightClass.methods.map { it as? KtLightMethod } +
|
||||
@@ -214,7 +214,7 @@ class KotlinReferencesSearcher : QueryExecutorBase<PsiReference, ReferencesSearc
|
||||
.firstOrNull() as? KtObjectDeclaration ?: return null
|
||||
if (originObject.isCompanion()) {
|
||||
val originClass = originObject.getStrictParentOfType<KtClass>()
|
||||
val originLightClass = LightClassUtil.getPsiClass(originClass)
|
||||
val originLightClass = originClass?.toLightClass()
|
||||
val allMethods = originLightClass?.allMethods
|
||||
return allMethods?.find { it is KtLightMethod && it.getOrigin() == function }
|
||||
}
|
||||
@@ -266,7 +266,7 @@ class KotlinReferencesSearcher : QueryExecutorBase<PsiReference, ReferencesSearc
|
||||
runReadAction {
|
||||
val componentFunctionDescriptor = element.dataClassComponentFunction()
|
||||
if (componentFunctionDescriptor != null) {
|
||||
val containingClass = LightClassUtil.getPsiClass(element.getStrictParentOfType<KtClassOrObject>())
|
||||
val containingClass = element.getStrictParentOfType<KtClassOrObject>()?.toLightClass()
|
||||
searchDataClassComponentUsages(queryParameters, containingClass, componentFunctionDescriptor)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user