From b6ca62f330561d412ae057181fea23205fab2cbe Mon Sep 17 00:00:00 2001 From: Sebastian Sellmair Date: Tue, 4 Apr 2023 21:21:18 +0200 Subject: [PATCH] [CLI][Minor] toArgumentStrings: Use List Builder (like) style KTIJ-24976 --- .../kotlin/compilerRunner/argumentsToStrings.kt | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/build-common/src/org/jetbrains/kotlin/compilerRunner/argumentsToStrings.kt b/build-common/src/org/jetbrains/kotlin/compilerRunner/argumentsToStrings.kt index 659ee13d605..dea13b22e36 100644 --- a/build-common/src/org/jetbrains/kotlin/compilerRunner/argumentsToStrings.kt +++ b/build-common/src/org/jetbrains/kotlin/compilerRunner/argumentsToStrings.kt @@ -30,9 +30,8 @@ internal fun toArgumentStrings( thisArguments: T, type: KClass, shortArgumentKeys: Boolean, compactArgumentValues: Boolean -): List { +): List = ArrayList().apply { val defaultArguments = type.newArgumentsInstance() - val result = mutableListOf() type.memberProperties.forEach { property -> val argumentAnnotation = property.findAnnotation() ?: return@forEach val rawPropertyValue = property.get(thisArguments) @@ -63,24 +62,23 @@ internal fun toArgumentStrings( when { /* We can just enable the flag by passing the argument name like -myFlag: Value not required */ rawPropertyValue is Boolean && rawPropertyValue -> { - result.add(argumentName) + add(argumentName) } /* Advanced (e.g. -X arguments) or boolean properties need to be passed using the '=' */ argumentAnnotation.isAdvanced || property.returnType.classifier == Boolean::class -> { - result.add("$argumentName=$argumentStringValue") + add("$argumentName=$argumentStringValue") } else -> { - result.add(argumentName) - result.add(argumentStringValue) + add(argumentName) + add(argumentStringValue) } } } } - result.addAll(thisArguments.freeArgs) - result.addAll(thisArguments.internalArguments.map { it.stringRepresentation }) - return result + addAll(thisArguments.freeArgs) + addAll(thisArguments.internalArguments.map { it.stringRepresentation }) } private fun getArgumentStringValue(argumentAnnotation: Argument, values: Array<*>?, compactArgumentValues: Boolean): List {