== Why is this an issue? Nested ``++match++`` structures are difficult to understand because you can easily confuse the cases of an inner ``++match++`` as belonging to an outer statement. Therefore nested ``++match++`` statements should be avoided. Specifically, you should structure your code to avoid the need for nested ``++match++`` statements, but if you cannot, then consider moving the inner ``++match++`` to another function. === Noncompliant code example [source,scala] ---- def foo(n: Int, m: Int): Unit = { n match { case 0 => m match { case 0 => // ... } case 1 => // ... } } ---- === Compliant solution [source,scala] ---- def foo(n: Int, m: Int): Unit = { n match { case 0 => bar(m) case 1 => // ... } } def bar(m: Int): Unit = { m match { case 0 => // ... } } ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::../message.adoc[] ''' == Comments And Links (visible only on this page) include::../comments-and-links.adoc[] endif::env-github,rspecator-view[]