summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorBurak Emir <emir@epfl.ch>2006-12-25 18:33:35 +0000
committerBurak Emir <emir@epfl.ch>2006-12-25 18:33:35 +0000
commit9e3b5c094b4e8b96d418d7498deab78dcb8bf150 (patch)
tree2e81375de66ba86341cafe59b33acae27e52fc71 /test
parent8c84ecf77194f98aaa41feab0ed903b8ac342899 (diff)
downloadscala-9e3b5c094b4e8b96d418d7498deab78dcb8bf150.tar.gz
scala-9e3b5c094b4e8b96d418d7498deab78dcb8bf150.tar.bz2
scala-9e3b5c094b4e8b96d418d7498deab78dcb8bf150.zip
caseclasses implement Product directly
caseclasses do not implement ProductN anymore
Diffstat (limited to 'test')
-rw-r--r--test/pending/pos/unapply.scala55
1 files changed, 0 insertions, 55 deletions
diff --git a/test/pending/pos/unapply.scala b/test/pending/pos/unapply.scala
deleted file mode 100644
index 4ddc93120b..0000000000
--- a/test/pending/pos/unapply.scala
+++ /dev/null
@@ -1,55 +0,0 @@
-object Test {
- def main(args:Array[String]) = {
- Foo.run
- Mas.run
- }
-}
-object Foo {
- 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 run: Unit = {
- val b = new Bar
- b match {
- 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)
- }/*
- b match {
- case Foo(n) => Console.println("name " + n)
- }*/
- }
-}
-
-class Bar {
- var size: Int = 50
- var name: String = "medium"
-}
-
-object Mas {
- object Gaz {
- def unapply(x: Any): Option[Product2[Int, String]] = x match {
- case y: Baz => Some(Tuple(y.size, y.name))
- case _ => None
- }
- }
- class Baz {
- var size: Int = 60
- var name: String = "too large"
- }
- def run: Unit = {
- val b = new Baz
- b match {
- case Gaz(s:Int, n:String) => Console.println("size "+s+" name "+n)
- }
- }
-}