Him188 5 år sedan
förälder
incheckning
7af1821fa6
1 ändrade filer med 0 tillägg och 48 borttagningar
  1. 0 48
      tools/intellij-plugin/src/diagnostics/fix/ConvertToPlainTextFix.kt

+ 0 - 48
tools/intellij-plugin/src/diagnostics/fix/ConvertToPlainTextFix.kt

@@ -12,29 +12,16 @@ package net.mamoe.mirai.console.intellij.diagnostics.fix
 import com.intellij.openapi.editor.Editor
 import com.intellij.openapi.project.Project
 import com.intellij.psi.PsiFile
-import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
 import org.jetbrains.kotlin.idea.caches.resolve.analyze
 import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall
 import org.jetbrains.kotlin.idea.core.ShortenReferences
-import org.jetbrains.kotlin.idea.imports.canBeAddedToImport
-import org.jetbrains.kotlin.idea.imports.importableFqName
 import org.jetbrains.kotlin.idea.inspections.KotlinUniversalQuickFix
 import org.jetbrains.kotlin.idea.quickfix.KotlinCrossLanguageQuickFixAction
-import org.jetbrains.kotlin.idea.references.mainReference
-import org.jetbrains.kotlin.idea.references.resolveMainReferenceToDescriptors
-import org.jetbrains.kotlin.idea.references.resolveToDescriptors
-import org.jetbrains.kotlin.idea.util.ImportDescriptorResult
-import org.jetbrains.kotlin.idea.util.ImportInsertHelper
 import org.jetbrains.kotlin.idea.util.getFactoryForImplicitReceiverWithSubtypeOf
 import org.jetbrains.kotlin.idea.util.getResolutionScope
 import org.jetbrains.kotlin.nj2k.postProcessing.resolve
 import org.jetbrains.kotlin.psi.*
-import org.jetbrains.kotlin.psi.psiUtil.collectDescendantsOfType
-import org.jetbrains.kotlin.psi.psiUtil.getQualifiedElementSelector
-import org.jetbrains.kotlin.psi.psiUtil.getReceiverExpression
 import org.jetbrains.kotlin.psi.psiUtil.referenceExpression
-import org.jetbrains.kotlin.resolve.BindingContext
-import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode
 
 class ConvertToPlainTextFix(
     /**
@@ -102,39 +89,4 @@ class ConvertToPlainTextFix(
 
         }
     }
-
-    fun applyImport(targetElement: KtElement) {
-        val targets = targetElement.resolveMainReferenceToDescriptors()
-        if (targets.isEmpty()) return
-
-        val fqName = targets.map { it.importableFqName!! }.single()
-
-        val file = targetElement.containingKtFile
-        val helper = ImportInsertHelper.getInstance(targetElement.project)
-        if (helper.importDescriptor(file, targets.first()) == ImportDescriptorResult.FAIL) return
-
-        val qualifiedExpressions = file.collectDescendantsOfType<KtDotQualifiedExpression> { qualifiedExpression ->
-            val selector = qualifiedExpression.getQualifiedElementSelector() as? KtNameReferenceExpression
-            selector?.getReferencedNameAsName() == fqName.shortName() && target(qualifiedExpression)?.importableFqName == fqName
-        }
-        val userTypes = file.collectDescendantsOfType<KtUserType> { userType ->
-            val selector = userType.getQualifiedElementSelector() as? KtNameReferenceExpression
-            selector?.getReferencedNameAsName() == fqName.shortName() && target(userType)?.importableFqName == fqName
-        }
-
-        //TODO: not deep
-        ShortenReferences.DEFAULT.process(qualifiedExpressions + userTypes)
-    }
-
-    private fun target(qualifiedElement: KtElement): DeclarationDescriptor? {
-        val nameExpression = qualifiedElement.getQualifiedElementSelector() as? KtNameReferenceExpression ?: return null
-        val receiver = nameExpression.getReceiverExpression() ?: return null
-        val bindingContext = qualifiedElement.analyze(BodyResolveMode.PARTIAL)
-        if (bindingContext[BindingContext.QUALIFIER, receiver] == null) return null
-
-        val targets = nameExpression.mainReference.resolveToDescriptors(bindingContext)
-        if (targets.isEmpty()) return null
-        if (!targets.all { it.canBeAddedToImport() }) return null
-        return targets.singleOrNull()
-    }
 }