From b7bcb0d9e33b3cbc0efb7b75c00e3e433859bbc7 Mon Sep 17 00:00:00 2001 From: Valentin Kipyatkov Date: Wed, 25 Jun 2014 18:25:39 +0400 Subject: [PATCH] Java to Kotlin converter: keep more than one blank line from original code --- j2k/src/org/jetbrains/jet/j2k/CodeBuilder.kt | 3 ++- j2k/tests/testData/ast/formatting/nonStaticMembers.kt | 1 + .../testData/ast/formatting/nonStaticMembersWithComments.kt | 1 + .../ast/formatting/staticAndNonStaticMembersWithComments.kt | 1 + j2k/tests/testData/ast/formatting/staticMembersWithComments.kt | 1 + j2k/tests/testData/ast/issues/kt-836.kt | 1 + 6 files changed, 7 insertions(+), 1 deletion(-) diff --git a/j2k/src/org/jetbrains/jet/j2k/CodeBuilder.kt b/j2k/src/org/jetbrains/jet/j2k/CodeBuilder.kt index f7c7e28f384..2ced8168c0b 100644 --- a/j2k/src/org/jetbrains/jet/j2k/CodeBuilder.kt +++ b/j2k/src/org/jetbrains/jet/j2k/CodeBuilder.kt @@ -108,7 +108,8 @@ class CodeBuilder(private val topElement: PsiElement?) { for (i in prefixElements.indices) { val e = prefixElements[i] if (i == 0 && e is PsiWhiteSpace) { - if (e.newLinesCount() > 1) { // insert at maximum one blank line + val blankLines = e.newLinesCount() - 1 + for (_ in 1..blankLines) { append("\n", false) } } diff --git a/j2k/tests/testData/ast/formatting/nonStaticMembers.kt b/j2k/tests/testData/ast/formatting/nonStaticMembers.kt index 280db7370fe..bb370adf26b 100644 --- a/j2k/tests/testData/ast/formatting/nonStaticMembers.kt +++ b/j2k/tests/testData/ast/formatting/nonStaticMembers.kt @@ -3,6 +3,7 @@ class F { fun f1() { } + fun f2() { } var i: Int? = 0 diff --git a/j2k/tests/testData/ast/formatting/nonStaticMembersWithComments.kt b/j2k/tests/testData/ast/formatting/nonStaticMembersWithComments.kt index 9e1ffe809ea..c7fb17bba09 100644 --- a/j2k/tests/testData/ast/formatting/nonStaticMembersWithComments.kt +++ b/j2k/tests/testData/ast/formatting/nonStaticMembersWithComments.kt @@ -7,6 +7,7 @@ class F { fun f1() { } + //c3 diff --git a/j2k/tests/testData/ast/formatting/staticAndNonStaticMembersWithComments.kt b/j2k/tests/testData/ast/formatting/staticAndNonStaticMembersWithComments.kt index c8a3626dc21..9ac75a818ae 100644 --- a/j2k/tests/testData/ast/formatting/staticAndNonStaticMembersWithComments.kt +++ b/j2k/tests/testData/ast/formatting/staticAndNonStaticMembersWithComments.kt @@ -1,5 +1,6 @@ class F { + //c3 diff --git a/j2k/tests/testData/ast/formatting/staticMembersWithComments.kt b/j2k/tests/testData/ast/formatting/staticMembersWithComments.kt index da8ddcde186..b99d402172f 100644 --- a/j2k/tests/testData/ast/formatting/staticMembersWithComments.kt +++ b/j2k/tests/testData/ast/formatting/staticMembersWithComments.kt @@ -8,6 +8,7 @@ class F { fun f1() { } + //c3 diff --git a/j2k/tests/testData/ast/issues/kt-836.kt b/j2k/tests/testData/ast/issues/kt-836.kt index e1d2d948971..41557143566 100644 --- a/j2k/tests/testData/ast/issues/kt-836.kt +++ b/j2k/tests/testData/ast/issues/kt-836.kt @@ -9,6 +9,7 @@ public class Language(protected var code: String) : Serializable { } } + class Base { fun test() { }