KT-21811 Convert string concatenation into multiline string (#2772)
New J2K: Convert string concatenation into multiline string #KT-21811 Fixed
This commit is contained in:
committed by
Ilya Kirillov
parent
c14affd6cd
commit
3a576ce14f
+10
-2
@@ -6,7 +6,6 @@
|
||||
package org.jetbrains.kotlin.nj2k.postProcessing
|
||||
|
||||
import com.intellij.openapi.diagnostic.Logger
|
||||
import com.intellij.openapi.editor.RangeMarker
|
||||
import com.intellij.openapi.progress.ProcessCanceledException
|
||||
import org.jetbrains.kotlin.diagnostics.Errors
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.resolveImportReference
|
||||
@@ -30,6 +29,7 @@ import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.nj2k.NewJ2kConverterContext
|
||||
import org.jetbrains.kotlin.nj2k.postProcessing.processings.*
|
||||
import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.psiUtil.parents
|
||||
|
||||
class NewJ2kPostProcessor : PostProcessor {
|
||||
@Suppress("PrivatePropertyName")
|
||||
@@ -221,7 +221,15 @@ private val inspectionLikePostProcessingGroup =
|
||||
RemoveForExpressionLoopParameterTypeProcessing(),
|
||||
intentionBasedProcessing(ReplaceMapGetOrDefaultIntention()),
|
||||
inspectionBasedProcessing(ReplaceGuardClauseWithFunctionCallInspection()),
|
||||
inspectionBasedProcessing(SortModifiersInspection())
|
||||
inspectionBasedProcessing(SortModifiersInspection()),
|
||||
intentionBasedProcessing(ConvertToRawStringTemplateIntention()) { element ->
|
||||
element.parents.none {
|
||||
(it as? KtProperty)?.hasModifier(KtTokens.CONST_KEYWORD) == true
|
||||
} && ConvertToStringTemplateIntention.buildReplacement(element).entries.any {
|
||||
(it as? KtEscapeStringTemplateEntry)?.unescapedValue == "\n"
|
||||
}
|
||||
},
|
||||
intentionBasedProcessing(IndentRawStringIntention())
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -1,2 +1,7 @@
|
||||
@Deprecated("Ph'nglui mglw'nafh\n" + " Cthulhu R'lyeh wgah'nagl fhtagn.\n" + " 'In His House at R'lyeh\n" + " Dead Cthulhu waits dreaming,\n" + " yet He shall rise and His kingdom\n" + " shall cover the Earth.'")
|
||||
@Deprecated("""Ph'nglui mglw'nafh
|
||||
Cthulhu R'lyeh wgah'nagl fhtagn.
|
||||
'In His House at R'lyeh
|
||||
Dead Cthulhu waits dreaming,
|
||||
yet He shall rise and His kingdom
|
||||
shall cover the Earth.'""")
|
||||
class TestDeprecatedInJavadocWithMultilineMessage
|
||||
@@ -0,0 +1,5 @@
|
||||
public class Test {
|
||||
String s = "asdf\n" +
|
||||
"nadfadsf\n" +
|
||||
"asdfasdf";
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
class Test {
|
||||
var s = """
|
||||
asdf
|
||||
nadfadsf
|
||||
asdfasdf
|
||||
""".trimIndent()
|
||||
}
|
||||
+5
@@ -4176,6 +4176,11 @@ public class NewJavaToKotlinConverterSingleFileTestGenerated extends AbstractNew
|
||||
runTest("nj2k/testData/newJ2k/postProcessing/AnonymousObject.java");
|
||||
}
|
||||
|
||||
@TestMetadata("ConvertConcatenationToRawString.java")
|
||||
public void testConvertConcatenationToRawString() throws Exception {
|
||||
runTest("nj2k/testData/newJ2k/postProcessing/ConvertConcatenationToRawString.java");
|
||||
}
|
||||
|
||||
@TestMetadata("GetOperator.java")
|
||||
public void testGetOperator() throws Exception {
|
||||
runTest("nj2k/testData/newJ2k/postProcessing/GetOperator.java");
|
||||
|
||||
Reference in New Issue
Block a user