rspec/rules/S1151/kotlin/rule.adoc
Alban Auzeill 2c306d110e Fix code block ambiguity with old header style
Ensure blank line before list and clean the one leading space
2020-06-30 17:16:12 +02:00

38 lines
792 B
Plaintext

The <code>when</code> statement should be used only to clearly define some new branches in the control flow. As soon as a case clause contains too many statements this highly decreases the readability of the overall control flow statement. In such case, the content of the case clause should be extracted into a dedicated function.
== Noncompliant Code Example
With the threshold set at 5:
----
when (myVariable) {
0 -> {// Noncompliant: 6 lines till next case
methodCall1("");
methodCall2("");
methodCall3("");
methodCall4("");
}
1 -> {
...
}
}
----
== Compliant Solution
----
when (myVariable) {
0 -> doSomething()
1 -> {
...
}
}
...
fun doSomething() {
methodCall1("");
methodCall2("");
methodCall3("");
methodCall4("");
}
----