From 14d0fcddd8d0b3b3f8ed44c797318c4a2bc6a4d8 Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Tue, 26 Mar 2024 17:01:45 +0100 Subject: [PATCH] cleanup, make immutable (part of KTIJ-28926 K2: Create Function From Usage Fix) GitOrigin-RevId: 724c27e015334cef1d3acbb0c2fc502a873312ff --- .../CreateExecutableFromKotlinUsageRequest.kt | 12 ++++++------ .../CreateKotlinCallableActionTextBuilder.kt | 3 ++- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateExecutableFromKotlinUsageRequest.kt b/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateExecutableFromKotlinUsageRequest.kt index 011fabb93e19..be1c2b4d83fd 100644 --- a/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateExecutableFromKotlinUsageRequest.kt +++ b/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateExecutableFromKotlinUsageRequest.kt @@ -18,13 +18,13 @@ internal abstract class CreateExecutableFromKotlinUsageRequest = call.createSmartPointer() - private val expectedParameterInfo: MutableList = mutableListOf() + private val expectedParameterInfo: List = computeExpectedParams(call) - init { - analyze(call) { - call.valueArgumentList?.arguments?.forEachIndexed { index, valueArgument -> - expectedParameterInfo.add(valueArgument.getExpectedParameterInfo(index)) - } + private fun computeExpectedParams(call: T): List { + return analyze(call) { + call.valueArgumentList?.arguments?.mapIndexed { index, valueArgument -> + valueArgument.getExpectedParameterInfo(index) + } ?: emptyList() } } diff --git a/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateKotlinCallableActionTextBuilder.kt b/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateKotlinCallableActionTextBuilder.kt index 582f94e3c0a6..8fb18b80a305 100644 --- a/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateKotlinCallableActionTextBuilder.kt +++ b/plugins/kotlin/code-insight/kotlin.code-insight.k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/quickFixes/createFromUsage/CreateKotlinCallableActionTextBuilder.kt @@ -92,7 +92,8 @@ object CreateKotlinCallableActionTextBuilder { // We must use short names of types for create-from-usage quick-fix (or IntentionAction) text. private val RENDERER_OPTION_FOR_CREATE_FROM_USAGE_TEXT: KtTypeRenderer = KtTypeRendererForSource.WITH_SHORT_NAMES.with { classIdRenderer = object : KtClassTypeQualifierRenderer { - context(KtAnalysisSession, KtTypeRenderer) override fun renderClassTypeQualifier(type: KtClassType, printer: PrettyPrinter) { + context(KtAnalysisSession, KtTypeRenderer) + override fun renderClassTypeQualifier(type: KtClassType, printer: PrettyPrinter) { printer.append(type.qualifiers.joinToString(separator = ".") { it.name.asString() }) } }