Reports switch expressions that do not cover all possible outcomes of the matched expression.
Groovy does not require that switch expression must be exhaustive. It acts as if an implicit default -> null
branch is inserted.
It may cause unexpected nulls if a developer forgets to insert necessary case
branches.
Example:
enum A { X, Y }
def foo(A a) {
def x = switch (a) { // reports switch
case A.X -> ...
}
}