From cb1b597b518257c1244aae3ab9ceb923fddebda0 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Mon, 8 Apr 2019 18:56:15 +0300 Subject: [PATCH] New J2K: save comments in data classed conversion --- .../jetbrains/kotlin/nj2k/postProcessing/ConvertDataClass.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nj2k/nj2k-services/src/org/jetbrains/kotlin/nj2k/postProcessing/ConvertDataClass.kt b/nj2k/nj2k-services/src/org/jetbrains/kotlin/nj2k/postProcessing/ConvertDataClass.kt index 52fd3f57209..477b7c5d945 100644 --- a/nj2k/nj2k-services/src/org/jetbrains/kotlin/nj2k/postProcessing/ConvertDataClass.kt +++ b/nj2k/nj2k-services/src/org/jetbrains/kotlin/nj2k/postProcessing/ConvertDataClass.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.descriptors.annotations.AnnotationUseSiteTarget import org.jetbrains.kotlin.idea.core.copied import org.jetbrains.kotlin.idea.intentions.addUseSiteTarget import org.jetbrains.kotlin.idea.references.KtSimpleNameReference +import org.jetbrains.kotlin.idea.util.CommentSaver import org.jetbrains.kotlin.nj2k.NewJ2kPostProcessing import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.addRemoveModifier.setModifierList @@ -73,6 +74,7 @@ class ConvertDataClass : NewJ2kPostProcessing { constructorParameter.addBefore(property.valOrVarKeyword, constructorParameter.nameIdentifier!!) constructorParameter.addAfter(factory.createWhiteSpace(), constructorParameter.valOrVarKeyword!!) constructorParameter.rename(property.name!!) + val propertyCommentSaver = CommentSaver(property, saveLineBreaks = true) if (property.modifierList != null) { val annotationEntries = constructorParameter.annotationEntries.map { it.copied() } constructorParameter.setModifierList(property.modifierList!!) @@ -93,6 +95,7 @@ class ConvertDataClass : NewJ2kPostProcessing { } property.delete() statement.delete() + propertyCommentSaver.restore(constructorParameter, forceAdjustIndent = true) } for (initBlock in element.getAnonymousInitializers()) { if ((initBlock.body as KtBlockExpression).statements.isEmpty()) {