From 14a631a5fec42d04d0723355a0b93e482b5e4662 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Fri, 8 May 2009 16:33:15 +0000 Subject: massive new collections checkin. --- test/files/run/forvaleq.scala | 92 ------------------------------------------- 1 file changed, 92 deletions(-) delete mode 100644 test/files/run/forvaleq.scala (limited to 'test/files/run/forvaleq.scala') diff --git a/test/files/run/forvaleq.scala b/test/files/run/forvaleq.scala deleted file mode 100644 index 1e4fd33dbc..0000000000 --- a/test/files/run/forvaleq.scala +++ /dev/null @@ -1,92 +0,0 @@ -// test "foo = expr" clauses in for comprehensions -// $Id$ - -import scala.collection.immutable.Queue -import scala.{List=>L} - -object Test { - // redefine some symbols to make it extra hard - class List - class Tuple2 - def List[A](as: A*) = 5 - - def firstDigit(x: Int): Int = - x match { - case 0 => 0 - case _ if (x<0) => firstDigit(-x) - case _ if (x<10) => x - case _ => firstDigit(x / 10) - } - - - { - // a basic test case - - val input = L.range(0,20) - val oddFirstTimesTwo = - for {x <- input - xf = firstDigit(x) - if xf % 2 == 1} - yield x*2 - println(oddFirstTimesTwo) - } - - { - // a test case with patterns - - val input = L.range(0, 20) - val oddFirstTimesTwo = - for {x <- input - xf = firstDigit(x) - yf = x - firstDigit(x) / 10 - (a, b) = (xf - yf, xf + yf) - if xf % 2 == 1} - yield a + b - println(oddFirstTimesTwo) - } - - { - // make sure it works on non-Ls - - // val input: Queue = Queue.Empty[int].incl(L.range(0,20)) - val input = L.range(0, 20).elements - val oddFirstTimesTwo = - for {x <- input - xf = firstDigit(x) - if xf % 2 == 1} - yield x*2 - println(oddFirstTimesTwo.toList) - } - - { - // yield the computed value - - val input = L.range(0,20) - val oddFirstTimesTwo = - for {x <- input - xf = firstDigit(x) - if xf % 2 == 1} - yield xf*2 - println(oddFirstTimesTwo) - } - - { - // make sure the function is only called once - var count: Int = 0 - - def fdct(x: Int) = { - count += 1 - firstDigit(x) - } - - val input = L.range(0,20) - for {x <- input - xf = fdct(x) - if xf % 2 == 1} - yield xf - - println("called " + count + " times") - } - - def main(args: Array[String]) {} -} -- cgit v1.2.3