== Why is this an issue? The ``++switch++`` statement should be used only to clearly define some new branches in the control flow. As soon as a ``++when++`` clause contains too many statements this highly decreases the readability of the overall control flow statement. In such case, the content of the ``++when++`` clause should be extracted into a dedicated function. === Noncompliant code example With the threshold set at ``++5++``: [source,apex] ---- public void foo(Integer value) { switch on value { when 1 { methodCall1(''); methodCall2(''); methodCall3(''); methodCall4(''); methodCall5(''); } when 2 { /* ... */ } } } ---- === Compliant solution [source,apex] ---- public void foo(Integer value) { switch on value { when 1 { doSomething(); } when 2 { /* ... */ } } } } private void doSomething() { methodCall1(''); methodCall2(''); methodCall3(''); methodCall4(''); methodCall5(''); } ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::../message.adoc[] include::../parameters.adoc[] ''' == Comments And Links (visible only on this page) include::../comments-and-links.adoc[] endif::env-github,rspecator-view[]