diff options
author | Martin Odersky <odersky@gmail.com> | 2007-07-24 17:43:47 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2007-07-24 17:43:47 +0000 |
commit | 5355f3c7323fa0ea1dabe2e39ec112c9d0b061b9 (patch) | |
tree | 2bda3cd539639ca5387a2a2fcea922a4c7ee480a /test/files/run/bug1220.scala | |
parent | d8504784b821fb64f411adf7c551ee4646e5f99c (diff) | |
download | scala-5355f3c7323fa0ea1dabe2e39ec112c9d0b061b9.tar.gz scala-5355f3c7323fa0ea1dabe2e39ec112c9d0b061b9.tar.bz2 scala-5355f3c7323fa0ea1dabe2e39ec112c9d0b061b9.zip |
fixed problems in subtyping.
fixed unsafe isInstanceOf's
Diffstat (limited to 'test/files/run/bug1220.scala')
-rwxr-xr-x | test/files/run/bug1220.scala | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/files/run/bug1220.scala b/test/files/run/bug1220.scala new file mode 100755 index 0000000000..a992e5f2a5 --- /dev/null +++ b/test/files/run/bug1220.scala @@ -0,0 +1,14 @@ +object Test extends Application { + class QSRichIterable[A](self:Iterable[A]) { + def filterMap[R](f: PartialFunction[A,R]) = + self filter (f.isDefinedAt) map f + } + + object Un { + def unapply(i:int): Option[int] = Some(i) + } + + val richIter = new QSRichIterable(List(0, 1, 2, 3, 4)) + + assert((richIter filterMap {case Un(3) => 7}) == List(7)) +} |