From fc504c6fdca6936f3095cad0227dedf9ce8475de Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Fri, 11 Jan 2019 15:45:28 +0300 Subject: [PATCH] New J2K: Add ReplacePrimitiveCastWithNumberConversionFix post processing --- .../kotlin/idea/j2k/NewJ2kPostProcessings.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/j2k/NewJ2kPostProcessings.kt b/idea/src/org/jetbrains/kotlin/idea/j2k/NewJ2kPostProcessings.kt index 9f571c661e9..3a9a3429889 100644 --- a/idea/src/org/jetbrains/kotlin/idea/j2k/NewJ2kPostProcessings.kt +++ b/idea/src/org/jetbrains/kotlin/idea/j2k/NewJ2kPostProcessings.kt @@ -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.j2k.postProcessing.ConvertDataClass import org.jetbrains.kotlin.idea.j2k.postProcessing.ConvertGettersAndSetters -import org.jetbrains.kotlin.idea.quickfix.QuickFixActionBase -import org.jetbrains.kotlin.idea.quickfix.RemoveModifierFix -import org.jetbrains.kotlin.idea.quickfix.RemoveUselessCastFix +import org.jetbrains.kotlin.idea.quickfix.* import org.jetbrains.kotlin.idea.references.KtSimpleNameReference import org.jetbrains.kotlin.idea.references.mainReference import org.jetbrains.kotlin.idea.references.readWriteAccess @@ -146,6 +144,13 @@ object NewJ2KPostProcessingRegistrarImpl : J2KPostProcessingRegistrar { 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 { override fun createAction(element: KtElement, diagnostics: Diagnostics): (() -> Unit)? = {