aboutsummaryrefslogtreecommitdiff
path: root/bench/tests/exhaustivity-T.scala
blob: 4d094758a139e4bc0f9aa3e9f0c45d0c69791fce (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
sealed trait O
object A extends O
object B extends O

object Test {

  def test(x: O) =
  (x, x, x, x, x, x, x, x) match {
    case (A, A, A, A, A, A, A, A) => 1
    case (B, B, B, B, B, B, B, B) => 2
    case (_, A, A, A, A, A, A, A) => 3
    case (_, B, B, B, B, B, B, B) => 4
    case (_, _, A, A, A, A, A, A) => 5
    case (_, _, B, B, B, B, B, B) => 6
    case (_, _, _, A, A, A, A, A) => 7
    case (_, _, _, B, B, B, B, B) => 8
    case (_, _, _, _, A, A, A, A) => 9
    case (_, _, _, _, B, B, B, B) => 10
    case (_, _, _, _, _, A, A, A) => 11
    case (_, _, _, _, _, B, B, B) => 12
    case (_, _, _, _, _, _, A, A) => 13
    case (_, _, _, _, _, _, B, B) => 14
    case (_, _, _, _, _, _, _, A) => 15
    case (_, _, _, _, _, _, _, B) => 16

  }
}