Allow empty blocks for classes and function literals

This commit is contained in:
Nikolay Krasko
2014-05-13 19:25:43 +04:00
parent 3d588acd2d
commit b958e0d6b8
121 changed files with 240 additions and 244 deletions
@@ -1,4 +1,10 @@
<root>
<item name='com.intellij.formatting.Spacing com.intellij.formatting.Spacing createKeepingFirstColumnSpacing(int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.Spacing com.intellij.formatting.Spacing createSpacing(int, int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder append(com.intellij.formatting.SpacingBuilder)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
@@ -77,7 +77,11 @@ class KotlinSpacingBuilder(val codeStyleSettings: CodeStyleSettings) {
}
}
fun customRule(block: (ASTBlock, ASTBlock, ASTBlock) -> Spacing?) {
fun spacing(spacing: Spacing) {
newRule { (parent, left, right) -> spacing }
}
fun customRule(block: (parent: ASTBlock, left: ASTBlock, right: ASTBlock) -> Spacing?) {
newRule(block)
}
@@ -57,6 +57,8 @@ fun createSpacingBuilder(settings: CodeStyleSettings): KotlinSpacingBuilder {
between(FUN, PROPERTY).blankLines(1)
// =============== Spacing ================
betweenInside(LBRACE, RBRACE, CLASS_BODY).spaces(0)
before(COMMA).spaceIf(jetCommonSettings.SPACE_BEFORE_COMMA)
after(COMMA).spaceIf(jetCommonSettings.SPACE_AFTER_COMMA)
@@ -225,6 +227,11 @@ fun createSpacingBuilder(settings: CodeStyleSettings): KotlinSpacingBuilder {
right = BLOCK)
.lineBreakIfLineBreakInParent(numSpacesOtherwise = 1)
inPosition(parent = FUNCTION_LITERAL,
left = LBRACE,
right = RBRACE)
.spacing(Spacing.createSpacing(0, 1, 0, settings.KEEP_LINE_BREAKS, settings.KEEP_BLANK_LINES_IN_CODE))
inPosition(parent = FUNCTION_LITERAL,
right = RBRACE)
.lineBreakIfLineBreakInParent(numSpacesOtherwise = spacesInSimpleFunction)
@@ -0,0 +1,41 @@
class Test {}
class Other {
class object {}
}
object TestObject {}
val testVal = {}
val testObject = object {}
fun foo(f: (String) -> Unit = {}) = {}
fun call() {
foo({})
foo {}
}
class Test1 {
}
class Other1 {
class object {
}
}
object TestObject1 {
}
val testVal1 = { }
val testObject1 = object {
}
fun foo1(f: (String) -> Unit = { }) = { }
fun call1() {
foo1({ })
foo1 { }
}
+41
View File
@@ -0,0 +1,41 @@
class Test {}
class Other {
class object {}
}
object TestObject {}
val testVal = {}
val testObject = object {}
fun foo(f: (String) -> Unit = {}) = {}
fun call() {
foo({})
foo {}
}
class Test1 {
}
class Other1 {
class object {
}
}
object TestObject1 {
}
val testVal1 = { }
val testObject1 = object {
}
fun foo1(f: (String) -> Unit = { }) = { }
fun call1() {
foo1({ })
foo1 { }
}
@@ -4,6 +4,10 @@ fun test(some: (Int) -> Int) {
fun foo() = test() {it}
val function = test {(a: Int) -> a}
val function1 = test {a : Int -> a}
val function2 = test {}
val function2 = test { }
val function3 = test {}
val function4 = test { }
val function5 = test {
}
// SET_TRUE: INSERT_WHITESPACES_IN_SIMPLE_ONE_LINE_METHOD
@@ -5,5 +5,9 @@ fun foo() = test() { it }
val function = test {(a: Int) -> a }
val function1 = test { a : Int -> a }
val function2 = test { }
val function3 = test {}
val function4 = test { }
val function5 = test {
}
// SET_TRUE: INSERT_WHITESPACES_IN_SIMPLE_ONE_LINE_METHOD
@@ -5,5 +5,9 @@ fun foo() = test() { it }
val function = test { (a: Int) -> a }
val function1 = test {a : Int -> a}
val function2 = test { }
val function3 = test {}
val function4 = test { }
val function5 = test {
}
// SET_TRUE: INSERT_WHITESPACES_IN_SIMPLE_ONE_LINE_METHOD
@@ -13,11 +13,9 @@ object Some3
A
val a = object: A {
}
val a = object: A {}
val b = object: A {
}
val b = object: A {}
class B {
class object: A {
@@ -13,11 +13,9 @@ object Some3
A
val a = object :A {
}
val a = object :A {}
val b = object :A {
}
val b = object :A {}
class B {
class object :A {
@@ -504,6 +504,11 @@ public class JetFormatterTestGenerated extends AbstractJetFormatterTest {
doTestInverted("idea/testData/formatter/ElseOnNewLine.after.inv.kt");
}
@TestMetadata("EmptyBlocks.after.inv.kt")
public void testEmptyBlocks() throws Exception {
doTestInverted("idea/testData/formatter/EmptyBlocks.after.inv.kt");
}
@TestMetadata("ForLineBreak.after.inv.kt")
public void testForLineBreak() throws Exception {
doTestInverted("idea/testData/formatter/ForLineBreak.after.inv.kt");
+1 -2
View File
@@ -1,2 +1 @@
class Test() {
}
class Test() {}
+1 -2
View File
@@ -1,2 +1 @@
open class Test() {
}
open class Test() {}
@@ -1,2 +1 @@
class A() {
}
class A() {}
+1 -2
View File
@@ -1,2 +1 @@
class A() {
}
class A() {}
@@ -1,2 +1 @@
class A() : Base(), I {
}
class A() : Base(), I {}
@@ -1,2 +1 @@
class A() : Base(), I {
}
class A() : Base(), I {}
@@ -1,2 +1 @@
class A() : Base(), I0, I1, I2 {
}
class A() : Base(), I0, I1, I2 {}
@@ -1,2 +1 @@
class A() : Base(), I0, I1, I2 {
}
class A() : Base(), I0, I1, I2 {}
@@ -1,2 +1 @@
class Test() {
}
class Test() {}
+1 -2
View File
@@ -1,2 +1 @@
class Test() {
}
class Test() {}
@@ -1,2 +1 @@
class Entry<K, V>() {
}
class Entry<K, V>() {}
+1 -2
View File
@@ -1,2 +1 @@
class Entry<K, V>() {
}
class Entry<K, V>() {}
@@ -1,4 +1,3 @@
class A() {
class B() {
}
class B() {}
}
@@ -1,4 +1,3 @@
class A() {
class B() {
}
class B() {}
}
@@ -1,6 +1,5 @@
class S() {
class object {
class Inner() {
}
class Inner() {}
}
}
@@ -1,6 +1,5 @@
class S() {
class object {
open class Inner() {
}
open class Inner() {}
}
}
@@ -1,2 +1 @@
class Test() {
}
class Test() {}
@@ -1,2 +1 @@
open class Test() {
}
open class Test() {}
@@ -1,2 +1 @@
private class Test() {
}
private class Test() {}
+1 -2
View File
@@ -1,2 +1 @@
private open class Test() {
}
private open class Test() {}
@@ -1,2 +1 @@
protected class Test() {
}
protected class Test() {}
@@ -1,2 +1 @@
protected open class Test() {
}
protected open class Test() {}
@@ -1,2 +1 @@
public class Test() {
}
public class Test() {}
+1 -2
View File
@@ -1,2 +1 @@
public open class Test() {
}
public open class Test() {}
@@ -1,2 +1 @@
class A() : Base() {
}
class A() : Base() {}
@@ -1,2 +1 @@
class A() : Base() {
}
class A() : Base() {}
+1 -2
View File
@@ -1,2 +1 @@
enum class A {
}
enum class A {}
+1 -2
View File
@@ -1,2 +1 @@
enum class A {
}
enum class A {}
@@ -1,2 +1 @@
enum class A : I {
}
enum class A : I {}
@@ -1,2 +1 @@
enum class A : I {
}
enum class A : I {}
@@ -1,2 +1 @@
enum class A : I0, I1, I2 {
}
enum class A : I0, I1, I2 {}
@@ -1,2 +1 @@
enum class A : I0, I1, I2 {
}
enum class A : I0, I1, I2 {}
@@ -1,2 +1 @@
enum class Test {
}
enum class Test {}
+1 -2
View File
@@ -1,2 +1 @@
enum class Test {
}
enum class Test {}
@@ -1,2 +1 @@
private enum class Test {
}
private enum class Test {}
+1 -2
View File
@@ -1,2 +1 @@
private enum class Test {
}
private enum class Test {}
@@ -1,2 +1 @@
protected enum class Test {
}
protected enum class Test {}
+1 -2
View File
@@ -1,2 +1 @@
protected enum class Test {
}
protected enum class Test {}
@@ -1,2 +1 @@
public enum class Test {
}
public enum class Test {}
+1 -2
View File
@@ -1,2 +1 @@
public enum class Test {
}
public enum class Test {}
@@ -1,7 +1,7 @@
{
val i = 0
while (i < 0) {
{ }
{}
{
j++
i++
@@ -1,7 +1,7 @@
{
var i: Int = 0
while (i < 0) {
{ }
{}
{
j++
i++
@@ -1,8 +1,6 @@
class `$$$$$`() {
}
class `$$$$$`() {}
class `$`() {
}
class `$`() {}
class `$$`(`$$$$`: `$$$$$`) : `$`() {
val `$$$`: `$$$$$`
@@ -1,8 +1,6 @@
open class `$$$$$`() {
}
open class `$$$$$`() {}
open class `$`() {
}
open class `$`() {}
open class `$$`(`$$$$`: `$$$$$`?) : `$`() {
val `$$$`: `$$$$$`?
@@ -2,5 +2,4 @@ package test
import `as`.`type`.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`trait`.`This`
class Test() {
}
class Test() {}
@@ -2,5 +2,4 @@ package test
import `as`.`type`.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`trait`.`This`
open class Test() {
}
open class Test() {}
@@ -2,5 +2,4 @@ package org.jetbrains.jet.j2k
import org.jetbrains.annotations.*
public class Converter() {
}
public class Converter() {}
@@ -2,5 +2,4 @@ package org.jetbrains.jet.j2k
import org.jetbrains.annotations.*
public open class Converter() {
}
public open class Converter() {}
@@ -1,4 +1,3 @@
package org.jetbrains.jet.j2k
public class Converter() {
}
public class Converter() {}
@@ -1,4 +1,3 @@
package org.jetbrains.jet.j2k
public open class Converter() {
}
public open class Converter() {}
@@ -1,5 +1,4 @@
class Base<T>(name: T) {
}
class Base<T>(name: T) {}
class One<T, K>(name: T, second: K) : Base<T>(name) {
private var mySecond: K = 0
@@ -1,5 +1,4 @@
open class Base<T>(name: T?) {
}
open class Base<T>(name: T?) {}
open class One<T, K>(name: T?, second: K?) : Base<T?>(name) {
private var mySecond: K? = null
@@ -1,5 +1,3 @@
class Base(name: String) {
}
class Base(name: String) {}
class One(name: String, second: String) : Base(name) {
}
class One(name: String, second: String) : Base(name) {}
@@ -1,5 +1,3 @@
open class Base(name: String?) {
}
open class Base(name: String?) {}
open class One(name: String?, second: String?) : Base(name) {
}
open class One(name: String?, second: String?) : Base(name) {}
@@ -1,5 +1,3 @@
class Base() {
}
class Base() {}
class One() : Base() {
}
class One() : Base() {}
@@ -1,5 +1,3 @@
open class Base() {
}
open class Base() {}
open class One() : Base() {
}
open class One() : Base() {}
@@ -1,5 +1,4 @@
class Base(name: String) {
}
class Base(name: String) {}
class One(name: String, second: String) : Base(name) {
private var mySecond: String = 0
@@ -1,5 +1,4 @@
open class Base(name: String?) {
}
open class Base(name: String?) {}
open class One(name: String?, second: String?) : Base(name) {
private var mySecond: String? = null
+1 -2
View File
@@ -1,7 +1,6 @@
import java.util.HashMap
class G<T : String>(t: T) {
}
class G<T : String>(t: T) {}
public class Java() {
fun test() {
+1 -2
View File
@@ -1,7 +1,6 @@
import java.util.HashMap
open class G<T : String?>(t: T?) {
}
open class G<T : String?>(t: T?) {}
public open class Java() {
open fun test() {
@@ -10,8 +10,7 @@ class One() {
}
}
class StringContainer(s: String) {
}
class StringContainer(s: String) {}
class Test() {
fun putString(s: String) {
@@ -10,8 +10,7 @@ open class One() {
}
}
open class StringContainer(s: String?) {
}
open class StringContainer(s: String?) {}
open class Test() {
open fun putString(s: String?) {
+1 -2
View File
@@ -10,8 +10,7 @@ class One() {
}
}
class IntContainer(i: Int) {
}
class IntContainer(i: Int) {}
class Test() {
fun putInt(i: Int) {
+1 -2
View File
@@ -10,8 +10,7 @@ open class One() {
}
}
open class IntContainer(i: Int) {
}
open class IntContainer(i: Int) {}
open class Test() {
open fun putInt(i: Int) {
@@ -1,4 +1,3 @@
package test
class C() {
}
class C() {}
@@ -1,4 +1,3 @@
package test
class C() {
}
class C() {}
@@ -1,4 +1,2 @@
class A() {
}
class B() {
}
class A() {}
class B() {}
@@ -1,4 +1,2 @@
class A() {
}
class B() {
}
class A() {}
class B() {}
@@ -1,4 +1,3 @@
package test
class C() {
}
class C() {}
@@ -1,4 +1,3 @@
package test
open class C() {
}
open class C() {}
@@ -1,7 +1,6 @@
package org.test
class Library() {
}
class Library() {}
class User() {
fun main() {
@@ -1,7 +1,6 @@
package org.test
open class Library() {
}
open class Library() {}
open class User() {
open fun main() {
@@ -1,8 +1,7 @@
package org.test
class OuterClass() {
class InnerClass() {
}
class InnerClass() {}
}
class User() {
@@ -1,8 +1,7 @@
package org.test
open class OuterClass() {
open class InnerClass() {
}
open class InnerClass() {}
}
open class User() {
@@ -2,8 +2,7 @@ package org.test
import java.util.LinkedList
class Member() {
}
class Member() {}
class User() {
fun main() {
@@ -2,8 +2,7 @@ package org.test
import java.util.LinkedList
open class Member() {
}
open class Member() {}
open class User() {
open fun main() {
@@ -2,8 +2,7 @@ package demo
class Foo() {
class object {
class Bar() {
}
class Bar() {}
}
}
@@ -2,8 +2,7 @@ package demo
open class Foo() {
class object {
open class Bar() {
}
open class Bar() {}
}
}
@@ -2,5 +2,4 @@ package org.jetbrains.jet.j2k.`in`
import org.jetbrains.annotations.Nullable
public class Converter() {
}
public class Converter() {}
@@ -2,5 +2,4 @@ package org.jetbrains.jet.j2k.`in`
import org.jetbrains.annotations.Nullable
public open class Converter() {
}
public open class Converter() {}
@@ -1,2 +1 @@
abstract trait I {
}
abstract trait I {}
@@ -1,2 +1 @@
abstract trait I {
}
abstract trait I {}
@@ -1,2 +1 @@
trait A {
}
trait A {}
@@ -1,2 +1 @@
trait A {
}
trait A {}
@@ -1,2 +1 @@
trait A : I0, I1, I2 {
}
trait A : I0, I1, I2 {}
@@ -1,2 +1 @@
trait A : I0, I1, I2 {
}
trait A : I0, I1, I2 {}
@@ -1,2 +1 @@
trait A : I {
}
trait A : I {}
@@ -1,2 +1 @@
trait A : I {
}
trait A : I {}
@@ -1,2 +1 @@
trait Test {
}
trait Test {}

Some files were not shown because too many files have changed in this diff Show More