aboutsummaryrefslogblamecommitdiff
path: root/tests/run/iterables.scala
blob: 2517229826605ca62f8962b77f5398560d45cb72 (plain) (tree)
1
                                             
























                                                                  
object Test extends dotty.runtime.LegacyApp {
  class Test(n: Int) extends Iterable[Int] {
    private var i = 0
    def iterator = new Iterator[Int] {
      def hasNext = i < n
      def next =
        if (hasNext) { val v = i; i += 1; v }
        else throw new IndexOutOfBoundsException("empty iterator")
    }
  }
  {
    val x = new Test(10)
    println(x.isEmpty)
    println(x.mkString(","))
  }
  {
    val x = new Test(10)
    println(x.filter(_ > 4).mkString(","))
  }
  {
    val x = new Test(10)
    val y = x.partition(_ % 2 == 0)
    println(y._1.mkString(","))
    println(y._2.mkString(","))
  }
}