Map.getOrPut: treat nulls as missing values.
This commit is contained in:
@@ -32,6 +32,7 @@ import org.jetbrains.kotlin.types.TypeUtils
|
||||
import org.jetbrains.kotlin.types.expressions.ExpressionTypingContext
|
||||
import org.jetbrains.kotlin.types.expressions.ForLoopConventionsChecker
|
||||
import org.jetbrains.kotlin.util.isValidOperator
|
||||
import org.jetbrains.kotlin.utils.getOrPutNullable
|
||||
import java.util.*
|
||||
|
||||
class IterableTypesDetection(
|
||||
@@ -62,7 +63,7 @@ class IterableTypesDetection(
|
||||
= isIterable(FuzzyType(type, emptyList()), loopVarType)
|
||||
|
||||
private fun elementType(type: FuzzyType): FuzzyType? {
|
||||
return cache.getOrPut(type, { elementTypeNoCache(type) })
|
||||
return cache.getOrPutNullable(type, { elementTypeNoCache(type) })
|
||||
}
|
||||
|
||||
override fun elementType(type: KotlinType): FuzzyType?
|
||||
|
||||
+2
-1
@@ -23,6 +23,7 @@ import com.intellij.psi.PsiManager
|
||||
import com.intellij.refactoring.PackageWrapper
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.utils.getOrPutNullable
|
||||
import java.util.HashMap
|
||||
|
||||
interface KotlinMoveTarget {
|
||||
@@ -64,7 +65,7 @@ class KotlinMoveTargetForDeferredFile(
|
||||
|
||||
override fun getOrCreateTargetPsi(originalPsi: PsiElement): PsiFile? {
|
||||
val originalFile = originalPsi.containingFile as? KtFile ?: return null
|
||||
return createdFiles.getOrPut(originalFile) { createFile(originalFile) }
|
||||
return createdFiles.getOrPutNullable(originalFile) { createFile(originalFile) }
|
||||
}
|
||||
|
||||
override fun getTargetPsiIfExists(originalPsi: PsiElement) = null
|
||||
|
||||
Reference in New Issue
Block a user