summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authormichelou <michelou@epfl.ch>2006-10-31 15:53:54 +0000
committermichelou <michelou@epfl.ch>2006-10-31 15:53:54 +0000
commit68c6e531f47da8e02450ba79de1907288d18bcea (patch)
tree316fa776e1d507710c62d5458e2899800605a134 /test
parent6c9163849ce73e252bd0574c0fbc29a8ad3bd6ba (diff)
downloadscala-68c6e531f47da8e02450ba79de1907288d18bcea.tar.gz
scala-68c6e531f47da8e02450ba79de1907288d18bcea.tar.bz2
scala-68c6e531f47da8e02450ba79de1907288d18bcea.zip
added method Predef.Tuple for type Tuple1
Diffstat (limited to 'test')
-rw-r--r--test/pending/pos/unapply.scala30
1 files changed, 16 insertions, 14 deletions
diff --git a/test/pending/pos/unapply.scala b/test/pending/pos/unapply.scala
index e784299ad8..70e4a1d913 100644
--- a/test/pending/pos/unapply.scala
+++ b/test/pending/pos/unapply.scala
@@ -1,23 +1,26 @@
-case class MyTuple2[A,B](val _1:A, val snd:B)
-class Foo
object Foo {
- def unapply(x:Any): Option[Product2[Int,String]] = {
- if(x.isInstanceOf[Bar]) {
- val y = x.asInstanceOf[Bar]
- Some(MyTuple2(y.size, y.name))
- } else None
- }
-
- def main(args:Array[String]) = {
+ def unapply(x: Any): Option[Product2[Int, String]] = x match {
+ case y: Bar => Some(Tuple(y.size, y.name))
+ case _ => None
+ }/*
+ // ERROR: test/pending/pos/unapply.scala:6 error: method unapply is defined twice
+ def unapply(x: Any): Option[Product1[String]] = x match {
+ case y: Bar => Some(Tuple(y.name))
+ case _ => None
+ }*/
+ def main(args:Array[String]): Unit = {
val b = new Bar
b match {
- case Foo(s:Int,n:String) => Console.println("size "+s+" name "+n)
+ case Foo(s:Int, n:String) => Console.println("size "+s+" name "+n)
}
b.size = 54
b.name = "large"
b match {
- case Foo(s:Int,n:String) => Console.println("size "+s+" name "+n)
- }
+ case Foo(s:Int, n:String) => Console.println("size "+s+" name "+n)
+ }/*
+ b match {
+ case Foo(n) => Console.println("name " + n)
+ }*/
}
}
@@ -25,4 +28,3 @@ class Bar {
var size: Int = 50
var name: String = "medium"
}
-