blob: 4b8057ffe8d24260e744309a94c98da40aacae5c (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
import scala.language.{ higherKinds }
class Bob[K[_]] {
def foo(other: Any) = other match {
case x: (Bob[X] forSome { type X[_] }) => true
case _ => false
}
}
object Test {
def main(args: Array[String]): Unit = {
val x = new Bob[List]
val results = List(x, new Bob[Set], 55) map (x foo _)
assert(results == List(true, true, false))
}
}
|