From 96f6c50dcbd324bd00a7348cfb85afc95e439660 Mon Sep 17 00:00:00 2001 From: Ilya Zorin Date: Mon, 9 Jan 2017 13:19:44 +0300 Subject: [PATCH] Format spaces around by keyword (#1016) GitOrigin-RevId: 5f2b33848d60ab4dddb8c68a99512f22c2558818 --- .../jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt | 3 +++ .../jetbrains/kotlin/formatter/FormatterTestGenerated.java | 6 ++++++ plugins/kotlin/idea/tests/testData/formatter/By.after.kt | 4 ++++ plugins/kotlin/idea/tests/testData/formatter/By.kt | 4 ++++ 4 files changed, 17 insertions(+) create mode 100644 plugins/kotlin/idea/tests/testData/formatter/By.after.kt create mode 100644 plugins/kotlin/idea/tests/testData/formatter/By.kt diff --git a/plugins/kotlin/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt b/plugins/kotlin/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt index ab9a10aa251f..10dbac21e46f 100644 --- a/plugins/kotlin/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt +++ b/plugins/kotlin/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt @@ -251,6 +251,9 @@ fun createSpacingBuilder(settings: CodeStyleSettings, builderUtil: KotlinSpacing betweenInside(TYPE_ARGUMENT_LIST, LAMBDA_ARGUMENT, CALL_EXPRESSION).spaces(1) between(WHEN_ENTRY, WHEN_ENTRY).lineBreakInCode() + + around(BY_KEYWORD).spaces(1) + betweenInside(IDENTIFIER, PROPERTY_DELEGATE, PROPERTY).spaces(1) } custom { diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java index 68ecd44eb8a8..5c73ebefa9df 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java @@ -98,6 +98,12 @@ public class FormatterTestGenerated extends AbstractFormatterTest { doTest(fileName); } + @TestMetadata("By.after.kt") + public void testBy() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/formatter/By.after.kt"); + doTest(fileName); + } + @TestMetadata("Cast.after.kt") public void testCast() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/formatter/Cast.after.kt"); diff --git a/plugins/kotlin/idea/tests/testData/formatter/By.after.kt b/plugins/kotlin/idea/tests/testData/formatter/By.after.kt new file mode 100644 index 000000000000..0635a912b678 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/formatter/By.after.kt @@ -0,0 +1,4 @@ +class Bar(val r: Runnable) : Runnable by r +class Foo { + val bar by lazy { "" } +} diff --git a/plugins/kotlin/idea/tests/testData/formatter/By.kt b/plugins/kotlin/idea/tests/testData/formatter/By.kt new file mode 100644 index 000000000000..bba9825e8d2a --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/formatter/By.kt @@ -0,0 +1,4 @@ +class Bar(val r: Runnable) : Runnable by r +class Foo { + val bar by lazy { "" } +}