aboutsummaryrefslogtreecommitdiff
path: root/tests/run/t2552.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/t2552.scala')
-rw-r--r--tests/run/t2552.scala34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/run/t2552.scala b/tests/run/t2552.scala
new file mode 100644
index 000000000..27a6606ca
--- /dev/null
+++ b/tests/run/t2552.scala
@@ -0,0 +1,34 @@
+object Test extends dotty.runtime.LegacyApp {
+ def testTakeWhile = {
+ val numbers = Iterator.range(0, 50)
+ val zeroTo9 = numbers.takeWhile(x => { println("p(" + x + ")"); x < 10 } )
+
+ zeroTo9.foreach(println _)
+
+ val zeroTo1 = Iterator.range(0, 20).takeWhile(x => { println("p(" + x + ")"); x < 2 } )
+
+ println(zeroTo1.hasNext)
+ println(zeroTo1.hasNext)
+ println(zeroTo1.next)
+ println(zeroTo1.hasNext)
+ println(zeroTo1.next)
+ println(zeroTo1.hasNext)
+ println(zeroTo1.hasNext)
+ }
+
+ def testFilter = {
+ val predicate = (x: Int) => { println("p(" + x + ")"); x % 2 == 0 }
+
+ val evens = Iterator.range(0, 10).filter(predicate)
+
+ println(evens.hasNext)
+ println(evens.hasNext)
+ println(evens.next)
+
+ evens.foreach(println _)
+ }
+
+ testTakeWhile
+ testFilter
+}
+