Ignore nested reference expressions in chain-method-continuation
Given code:
fun buildBar1(): Foo.Bar = Foo.Bar.builder().baz().baz.build()
fun buildBar2(): Foo.Bar = Foo.bar.Bar.builder().baz().baz.build()
fun buildBar3(): Foo.Bar = Foo.bar.bar.Bar.builder().baz().baz.build()
fun buildBar4(): Foo.Bar = Foo.Bar.baz.builder().baz().baz.build()
fun buildBar5(): Foo.Bar = Foo.baz().bar.Bar.builder().build()
Is now formatted as:
fun buildBar1(): Foo.Bar =
Foo.Bar
.builder()
.baz()
.baz
.build()
fun buildBar2(): Foo.Bar =
Foo.bar.Bar
.builder()
.baz()
.baz
.build()
fun buildBar3(): Foo.Bar =
Foo.bar.bar.Bar
.builder()
.baz()
.baz
.build()
fun buildBar4(): Foo.Bar =
Foo.Bar.baz
.builder()
.baz()
.baz
.build()
fun buildBar5(): Foo.Bar =
Foo
.baz()
.bar.Bar
.builder()
.build()
Closes #2602
Checklist
Before submitting the PR, please check following (checks which are not relevant may be ignored):
[X] Commit message are well written. In addition to a short title, the commit message also explain why a change is made.
[X] At least one commit message contains a reference Closes #<xxx> or Fixes #<xxx> (replace<xxx> with issue number)
[X] Tests are added
[X] KtLint format has been applied on source code itself and violations are fixed
[X] PR title is short and clear (it is used as description in the release changelog)
[ ] Snapshot documentation in case documentation is to be released together with a code change
[ ] Release documentation in case documentation is related to a released version of ktlint and has to be published as soon as the change is merged to master
Description
Ignore nested reference expressions in
chain-method-continuation
Given code:
Is now formatted as:
Closes #2602
Checklist
Before submitting the PR, please check following (checks which are not relevant may be ignored):
Closes #<xxx>
orFixes #<xxx>
(replace<xxx>
with issue number)Documentation is updated. See difference between snapshot and release documentation