use references search in introduce parameter
This commit is contained in:
+3
-4
@@ -23,6 +23,7 @@ import com.intellij.openapi.project.Project
|
|||||||
import com.intellij.psi.PsiDocumentManager
|
import com.intellij.psi.PsiDocumentManager
|
||||||
import com.intellij.psi.PsiElement
|
import com.intellij.psi.PsiElement
|
||||||
import com.intellij.psi.PsiFile
|
import com.intellij.psi.PsiFile
|
||||||
|
import com.intellij.psi.search.searches.ReferencesSearch
|
||||||
import com.intellij.psi.util.PsiTreeUtil
|
import com.intellij.psi.util.PsiTreeUtil
|
||||||
import com.intellij.refactoring.introduce.inplace.AbstractInplaceIntroducer
|
import com.intellij.refactoring.introduce.inplace.AbstractInplaceIntroducer
|
||||||
import com.intellij.refactoring.listeners.RefactoringEventListener
|
import com.intellij.refactoring.listeners.RefactoringEventListener
|
||||||
@@ -48,6 +49,7 @@ import org.jetbrains.kotlin.idea.search.usagesSearch.DefaultSearchHelper
|
|||||||
import org.jetbrains.kotlin.idea.search.usagesSearch.UsagesSearchTarget
|
import org.jetbrains.kotlin.idea.search.usagesSearch.UsagesSearchTarget
|
||||||
import org.jetbrains.kotlin.idea.search.usagesSearch.search
|
import org.jetbrains.kotlin.idea.search.usagesSearch.search
|
||||||
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
|
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
|
||||||
|
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
|
||||||
import org.jetbrains.kotlin.idea.util.application.executeCommand
|
import org.jetbrains.kotlin.idea.util.application.executeCommand
|
||||||
import org.jetbrains.kotlin.idea.util.application.runWriteAction
|
import org.jetbrains.kotlin.idea.util.application.runWriteAction
|
||||||
import org.jetbrains.kotlin.idea.util.approximateWithResolvableType
|
import org.jetbrains.kotlin.idea.util.approximateWithResolvableType
|
||||||
@@ -346,10 +348,7 @@ private fun findInternalUsagesOfParametersAndReceiver(
|
|||||||
targetParent.getValueParameters()
|
targetParent.getValueParameters()
|
||||||
.filter { !it.hasValOrVar() }
|
.filter { !it.hasValOrVar() }
|
||||||
.forEach {
|
.forEach {
|
||||||
val paramUsages = DefaultSearchHelper<JetParameter>()
|
val paramUsages = ReferencesSearch.search(it).map { it.getElement() as JetElement }
|
||||||
.newRequest(UsagesSearchTarget(element = it))
|
|
||||||
.search()
|
|
||||||
.map { it.getElement() as JetElement }
|
|
||||||
if (paramUsages.isNotEmpty()) {
|
if (paramUsages.isNotEmpty()) {
|
||||||
usages.put(it, paramUsages)
|
usages.put(it, paramUsages)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user