Do we agree that the code below defines an exhaustive switch so no default is 
necessary ?

sealed interface List permits Cons, Nil { }
record Cons(String value, Object next) implements List { }
enum Nil implements List { NIL }

int size(List list) {
  return switch(list) {
    case Cons cons -> 1 + size(cons.next);
    case Nil.NIL -> 0
  };
}

regards,
RĂ©mi

Reply via email to