aboutsummaryrefslogtreecommitdiff
path: root/tests/patmat/t9289.scala
blob: 714a4a0e3928a6b7b19195d2d774eaa24a5e8397 (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
trait Module {
  sealed trait Tree

  case class LetL() extends Tree
  case class LetR() extends Tree
}

class Patmat[T <: Module](val module: T) {
  def patmat(tree: module.Tree) = tree match {
    case module.LetL() => ???
  }

  def exhaust(tree: module.Tree) = tree match {
    case module.LetL() => ???
    case module.LetR() => ???
  }
}

class Patmat2(val module: Module) {
  def patmat(tree: module.Tree) = tree match {
    case module.LetL() => ???
  }

  def exhaust(tree: module.Tree) = tree match {
    case module.LetL() => ???
    case module.LetR() => ???
  }
}