Extract FE 1.0 dependent part from JavaToKotlinClassMap
Also move JavaToKotlinClassMap to :core:compiler.common.jvm
This commit is contained in:
@@ -10,7 +10,7 @@ package org.jetbrains.kotlin.idea.util
|
||||
import com.intellij.psi.*
|
||||
import org.jetbrains.kotlin.builtins.getReturnTypeFromFunctionType
|
||||
import org.jetbrains.kotlin.builtins.isBuiltinFunctionalType
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMap
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMapper
|
||||
import org.jetbrains.kotlin.builtins.replaceReturnType
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.impl.ClassDescriptorImpl
|
||||
@@ -58,7 +58,7 @@ private fun KotlinType.approximateNonDynamicFlexibleTypes(
|
||||
if (isFlexible()) {
|
||||
val flexible = asFlexibleType()
|
||||
val lowerClass = flexible.lowerBound.constructor.declarationDescriptor as? ClassDescriptor?
|
||||
val isCollection = lowerClass != null && JavaToKotlinClassMap.isMutable(lowerClass)
|
||||
val isCollection = lowerClass != null && JavaToKotlinClassMapper.isMutable(lowerClass)
|
||||
// (Mutable)Collection<T>! -> MutableCollection<T>?
|
||||
// Foo<(Mutable)Collection<T>!>! -> Foo<Collection<T>>?
|
||||
// Foo! -> Foo?
|
||||
@@ -258,4 +258,4 @@ private fun PsiType.collectTypeParameters(): List<PsiTypeParameter> {
|
||||
}
|
||||
)
|
||||
return results
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,8 +29,6 @@ import org.jetbrains.kotlin.psi.psiUtil.siblings
|
||||
import org.jetbrains.kotlin.idea.core.util.start
|
||||
import org.jetbrains.kotlin.idea.core.util.end
|
||||
import org.jetbrains.kotlin.idea.core.util.range
|
||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||
import org.jetbrains.kotlin.types.KotlinType
|
||||
import java.util.*
|
||||
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ import com.intellij.openapi.progress.ProgressManager
|
||||
import com.intellij.psi.*
|
||||
import com.intellij.psi.search.PsiShortNamesCache
|
||||
import com.intellij.psi.util.PsiTreeUtil
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMap
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMapper
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
@@ -164,7 +164,7 @@ class PlainTextPasteImportResolver(private val dataForConversion: DataForConvers
|
||||
}
|
||||
|
||||
classes.find { (_, descriptor) ->
|
||||
JavaToKotlinClassMap.mapPlatformClass(descriptor!!).isNotEmpty()
|
||||
JavaToKotlinClassMapper.mapPlatformClass(descriptor!!).isNotEmpty()
|
||||
}?.let { (psiClass, _) ->
|
||||
performWriteAction { addImport(psiElementFactory.createImportStatement(psiClass)) }
|
||||
}
|
||||
@@ -236,4 +236,4 @@ class PlainTextPasteImportResolver(private val dataForConversion: DataForConvers
|
||||
)
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix
|
||||
import com.intellij.codeInsight.intention.IntentionAction
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMap
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMapper
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
@@ -54,7 +54,7 @@ object AssignOperatorAmbiguityFactory : KotlinIntentionActionsFactory() {
|
||||
|
||||
private fun KotlinType?.isMutableCollection(): Boolean {
|
||||
if (this == null) return false
|
||||
return JavaToKotlinClassMap.isMutable(this) || constructor.supertypes.reversed().any { JavaToKotlinClassMap.isMutable(it) }
|
||||
return JavaToKotlinClassMapper.isMutable(this) || constructor.supertypes.reversed().any { JavaToKotlinClassMapper.isMutable(it) }
|
||||
}
|
||||
|
||||
private class ReplaceWithAssignFunctionCallFix(
|
||||
|
||||
Reference in New Issue
Block a user