Add/remove argument name intentions to work for super class constructor call
This commit is contained in:
@@ -63,7 +63,7 @@ class AddNameToArgumentIntention
|
||||
val argumentList = argument.parent as? KtValueArgumentList ?: return null
|
||||
if (argument != argumentList.arguments.last { !it.isNamed() }) return null
|
||||
|
||||
val callExpr = argumentList.parent as? KtExpression ?: return null
|
||||
val callExpr = argumentList.parent as? KtCallElement ?: return null
|
||||
val resolvedCall = callExpr.getResolvedCall(callExpr.analyze(BodyResolveMode.PARTIAL)) ?: return null
|
||||
val argumentMatch = resolvedCall.getArgumentMapping(argument) as? ArgumentMatch ?: return null
|
||||
if (argumentMatch.status != ArgumentMatchStatus.SUCCESS) return null
|
||||
|
||||
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.idea.intentions
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.util.TextRange
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
import org.jetbrains.kotlin.psi.KtExpression
|
||||
import org.jetbrains.kotlin.psi.KtCallElement
|
||||
import org.jetbrains.kotlin.psi.KtPsiFactory
|
||||
import org.jetbrains.kotlin.psi.KtValueArgument
|
||||
import org.jetbrains.kotlin.psi.KtValueArgumentList
|
||||
@@ -38,7 +38,7 @@ class RemoveArgumentNameIntention
|
||||
val arguments = argumentList.arguments
|
||||
if (arguments.takeWhile { it != element }.any { it.isNamed() }) return null
|
||||
|
||||
val callExpr = argumentList.parent as? KtExpression ?: return null
|
||||
val callExpr = argumentList.parent as? KtCallElement ?: return null
|
||||
val resolvedCall = callExpr.getResolvedCall(callExpr.analyze(BodyResolveMode.PARTIAL)) ?: return null
|
||||
val argumentMatch = resolvedCall.getArgumentMapping(element) as? ArgumentMatch ?: return null
|
||||
if (argumentMatch.valueParameter.index != arguments.indexOf(element)) return null
|
||||
|
||||
Reference in New Issue
Block a user