New J2K: Add ReplacePrimitiveCastWithNumberConversionFix post processing

This commit is contained in:
Ilya Kirillov
2019-01-11 15:45:28 +03:00
committed by Ilya Kirillov
parent 23a42b36b4
commit fc504c6fdc
@@ -46,9 +46,7 @@ import org.jetbrains.kotlin.idea.intentions.branchedTransformations.intentions.I
import org.jetbrains.kotlin.idea.intentions.branchedTransformations.isTrivialStatementBody import org.jetbrains.kotlin.idea.intentions.branchedTransformations.isTrivialStatementBody
import org.jetbrains.kotlin.idea.j2k.postProcessing.ConvertDataClass import org.jetbrains.kotlin.idea.j2k.postProcessing.ConvertDataClass
import org.jetbrains.kotlin.idea.j2k.postProcessing.ConvertGettersAndSetters import org.jetbrains.kotlin.idea.j2k.postProcessing.ConvertGettersAndSetters
import org.jetbrains.kotlin.idea.quickfix.QuickFixActionBase import org.jetbrains.kotlin.idea.quickfix.*
import org.jetbrains.kotlin.idea.quickfix.RemoveModifierFix
import org.jetbrains.kotlin.idea.quickfix.RemoveUselessCastFix
import org.jetbrains.kotlin.idea.references.KtSimpleNameReference import org.jetbrains.kotlin.idea.references.KtSimpleNameReference
import org.jetbrains.kotlin.idea.references.mainReference import org.jetbrains.kotlin.idea.references.mainReference
import org.jetbrains.kotlin.idea.references.readWriteAccess import org.jetbrains.kotlin.idea.references.readWriteAccess
@@ -146,6 +144,13 @@ object NewJ2KPostProcessingRegistrarImpl : J2KPostProcessingRegistrar {
parent.delete() parent.delete()
}, },
registerDiagnosticBasedProcessing(Errors.CAST_NEVER_SUCCEEDS) { element: KtSimpleNameExpression, diagnostic ->
val action =
ReplacePrimitiveCastWithNumberConversionFix.createActionsForAllProblems(listOf(diagnostic)).singleOrNull()
?: return@registerDiagnosticBasedProcessing
action.invoke(element.project, null, element.containingKtFile)
},
SingleProcessing(object : J2kPostProcessing { SingleProcessing(object : J2kPostProcessing {
override fun createAction(element: KtElement, diagnostics: Diagnostics): (() -> Unit)? = override fun createAction(element: KtElement, diagnostics: Diagnostics): (() -> Unit)? =
{ {