"Remove explicit type specification" intention: Add type argument to initializer if need #KT-13343 Fixed
This commit is contained in:
committed by
Mikhail Glukhikh
parent
54922362e3
commit
0099b7b3b1
@@ -19,6 +19,8 @@ package org.jetbrains.kotlin.idea.intentions
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.util.TextRange
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.idea.refactoring.addTypeArgumentsIfNeeded
|
||||
import org.jetbrains.kotlin.idea.refactoring.getQualifiedTypeArgumentList
|
||||
import org.jetbrains.kotlin.idea.search.usagesSearch.descriptor
|
||||
import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.psiUtil.endOffset
|
||||
@@ -35,7 +37,10 @@ class RemoveExplicitTypeIntention : SelfTargetingRangeIntention<KtCallableDeclar
|
||||
}
|
||||
|
||||
override fun applyTo(element: KtCallableDeclaration, editor: Editor?) {
|
||||
val initializer = (element as? KtProperty)?.initializer
|
||||
val typeArgumentList = initializer?.let { getQualifiedTypeArgumentList(it) }
|
||||
element.typeReference = null
|
||||
if (typeArgumentList != null) addTypeArgumentsIfNeeded(initializer, typeArgumentList)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
Reference in New Issue
Block a user