def isLegalFor(board:Board) =
(board(from), board(to)) match {
case (Nil, _) => false
case (x :: _, Nil) => true
case (x :: _, y :: _) if x < y => true
case (x :: _, y :: _) if x > y => false
}
board(from) と board(to) はどちらも List[Int]
警告が生成されます:
[warn] missing combination * Nil * *
これは本当に混乱しているようです。最初のケースでは、list1 が空であり、list2 がまったくない場合をカバーする必要があります。最後の 3 つのケースでは、list1 が少なくとも 1 つの要素を持ち、list2 が空または少なくとも 1 つの要素である場合をカバーする必要があります。
リストは空でもなくてもかまいません...合計4つの組み合わせです。大丈夫そうです。何が欠けている?