blob: 2e57f60502dcddb1af3b6c8e4f3c4a71c2d628ce (
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
|
/** I know what I am doing is wrong -- since I am about to look into
* this bug, I add a test in pending/pos... however, I am afraid that
* once this bug is fixed, this test case might go into test/pos
* there it adds to the huge number of tiny little test cases.
*
* Ideally, an option in the bugtracking system would automatically
* handle "pos" bugs.
*/
object Test extends Application {
object Twice {
def apply(x: Int) = x * 2
def unapply(x: Int): Option[Tuple1[Int]] =
if (x % 2 == 0) Some(Tuple1(x / 2))
else None
}
def test(x: Int) = x match {
case Twice(y) => "x is two times "+y
case _ => "x is odd"
}
Console.println(test(3))
Console.println(test(4))
}
|