Minor changes after code review

This commit is contained in:
Valentin Kipyatkov
2020-02-26 09:38:26 +01:00
parent b9a9000569
commit 12bf8a44e7
2 changed files with 6 additions and 1 deletions
@@ -16,6 +16,7 @@ import org.jetbrains.kotlin.psi.psiUtil.hasBody
import org.jetbrains.kotlin.renderer.DescriptorRenderer import org.jetbrains.kotlin.renderer.DescriptorRenderer
import org.jetbrains.kotlin.types.KotlinType import org.jetbrains.kotlin.types.KotlinType
import org.jetbrains.kotlin.types.isError import org.jetbrains.kotlin.types.isError
import kotlin.contracts.contract
class KotlinSuggestedRefactoringAvailability(refactoringSupport: SuggestedRefactoringSupport) : class KotlinSuggestedRefactoringAvailability(refactoringSupport: SuggestedRefactoringSupport) :
SuggestedRefactoringAvailability(refactoringSupport) SuggestedRefactoringAvailability(refactoringSupport)
@@ -51,6 +52,7 @@ class KotlinSuggestedRefactoringAvailability(refactoringSupport: SuggestedRefact
descriptorWithOldSignature.valueParameters[oldIndex].type, descriptorWithOldSignature.valueParameters[oldIndex].type,
descriptorWithNewSignature.valueParameters[newIndex].type descriptorWithNewSignature.valueParameters[newIndex].type
) )
// oldType and newType may not be null because arguments of refineType call were all non-null
improvedOldParameterTypesById[id] = oldType!! improvedOldParameterTypesById[id] = oldType!!
improvedNewParameterTypesById[id] = newType!! improvedNewParameterTypesById[id] = newType!!
} }
@@ -34,7 +34,10 @@ class KotlinSuggestedRefactoringExecution(
KotlinTypeInfo(text = newSignature.type, isCovariant = true) KotlinTypeInfo(text = newSignature.type, isCovariant = true)
} }
require(descriptorWithNewSignature.valueParameters.size == newSignature.parameters.size) require(descriptorWithNewSignature.valueParameters.size == newSignature.parameters.size) {
"Number of parameters of newSignature is ${newSignature.parameters.size} and of the descriptor is ${descriptorWithNewSignature.valueParameters.size}"
}
val parameterTypeInfos = descriptorWithNewSignature.valueParameters.zip(newSignature.parameters) val parameterTypeInfos = descriptorWithNewSignature.valueParameters.zip(newSignature.parameters)
.map { (parameterDescriptor, parameterData) -> .map { (parameterDescriptor, parameterData) ->
val type = parameterDescriptor.varargElementType ?: parameterDescriptor.type val type = parameterDescriptor.varargElementType ?: parameterDescriptor.type