Refactoring: use isNamed utility function for value arguments

This commit is contained in:
Nikolay Krasko
2018-10-12 16:44:48 +03:00
parent 6fcb1716eb
commit 5b6437876f
3 changed files with 3 additions and 3 deletions
@@ -305,7 +305,7 @@ class CodeInliner<TCallElement : KtElement>(
val call = dotQualified.selectorExpression as? KtCallExpression ?: return
val nameExpression = call.calleeExpression as? KtSimpleNameExpression ?: return
val argument = call.valueArguments.singleOrNull() ?: return
if (argument.getArgumentName() != null) return
if (argument.isNamed()) return
val argumentExpression = argument.getArgumentExpression() ?: return
codeToInline.mainExpression = psiFactory.createExpressionByPattern("$0 ${nameExpression.text} $1", receiver, argumentExpression)
}
@@ -193,7 +193,7 @@ open class ConvertLambdaToReferenceIntention(text: String) :
val arguments = outerCallExpression.valueArguments.filter { it !is KtLambdaArgument }
val hadDefaultValues = valueParameters.size - 1 > arguments.size
val useNamedArguments = valueParameters.any { it.hasDefaultValue() } && hadDefaultValues
|| arguments.any { it.getArgumentName() != null }
|| arguments.any { it.isNamed() }
val newArgumentList = factory.buildValueArgumentList {
appendFixedText("(")
@@ -52,7 +52,7 @@ class KotlinCallerCallUsage(element: KtCallElement): KotlinUsageInfo<KtCallEleme
override fun processUsage(changeInfo: KotlinChangeInfo, element: KtCallElement, allUsages: Array<out UsageInfo>): Boolean {
val argumentList = element.valueArgumentList ?: return true
val psiFactory = KtPsiFactory(project)
val isNamedCall = argumentList.arguments.any { it.getArgumentName() != null }
val isNamedCall = argumentList.arguments.any { it.isNamed() }
changeInfo.getNonReceiverParameters()
.filter { it.isNewParameter }
.forEach {