summaryrefslogtreecommitdiff
path: root/src/library/scala/collection/IterableProxyLike.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2010-03-19 17:35:58 +0000
committerMartin Odersky <odersky@gmail.com>2010-03-19 17:35:58 +0000
commitc059e09cc7fee862e605c4d4d054447bc460aa2a (patch)
tree3f74ebdfc248e7fa2f7a43151ff0c771a9699909 /src/library/scala/collection/IterableProxyLike.scala
parent05c22ec2eed257c7b5e93aa4830a7666831fff48 (diff)
downloadscala-c059e09cc7fee862e605c4d4d054447bc460aa2a.tar.gz
scala-c059e09cc7fee862e605c4d4d054447bc460aa2a.tar.bz2
scala-c059e09cc7fee862e605c4d4d054447bc460aa2a.zip
Spring cleaning of collection libraries.
If people think some operations can be more lazy, please provide patches/do changes. Also brought proxies and forwarders into line.
Diffstat (limited to 'src/library/scala/collection/IterableProxyLike.scala')
-rw-r--r--src/library/scala/collection/IterableProxyLike.scala26
1 files changed, 11 insertions, 15 deletions
diff --git a/src/library/scala/collection/IterableProxyLike.scala b/src/library/scala/collection/IterableProxyLike.scala
index 4400237486..fe148339b0 100644
--- a/src/library/scala/collection/IterableProxyLike.scala
+++ b/src/library/scala/collection/IterableProxyLike.scala
@@ -24,24 +24,20 @@ import mutable.Buffer
* @version 2.8
* @since 2.8
*/
-trait IterableProxyLike[+A, +This <: IterableLike[A, This] with Iterable[A]]
- extends IterableLike[A, This]
- with TraversableProxyLike[A, This]
+trait IterableProxyLike[+A, +Repr <: IterableLike[A, Repr] with Iterable[A]]
+ extends IterableLike[A, Repr]
+ with TraversableProxyLike[A, Repr]
{
override def iterator: Iterator[A] = self.iterator
- override def foreach[U](f: A => U): Unit = self.foreach(f)
- override def isEmpty: Boolean = self.isEmpty
- override def foldRight[B](z: B)(op: (A, B) => B): B = self.foldRight(z)(op)
- override def reduceRight[B >: A](op: (A, B) => B): B = self.reduceRight(op)
- override def toIterable: Iterable[A] = self.toIterable
- override def zip[A1 >: A, B, That](that: Iterable[B])(implicit bf: CanBuildFrom[This, (A1, B), That]): That = self.zip[A1, B, That](that)(bf)
- override def zipAll[B, A1 >: A, That](that: Iterable[B], thisElem: A1, thatElem: B)(implicit bf: CanBuildFrom[This, (A1, B), That]): That = self.zipAll(that, thisElem, thatElem)(bf)
- override def zipWithIndex[A1 >: A, That](implicit bf: CanBuildFrom[This, (A1, Int), That]): That = self.zipWithIndex(bf)
- override def head: A = self.head
- override def takeRight(n: Int): This = self.takeRight(n)
- override def dropRight(n: Int): This = self.dropRight(n)
+ override def grouped(size: Int): Iterator[Repr] = self.grouped(size)
+ override def sliding[B >: A](size: Int): Iterator[Repr] = self.sliding(size)
+ override def sliding[B >: A](size: Int, step: Int): Iterator[Repr] = self.sliding(size, step)
+ override def takeRight(n: Int): Repr = self.takeRight(n)
+ override def dropRight(n: Int): Repr = self.dropRight(n)
+ override def zip[A1 >: A, B, That](that: Iterable[B])(implicit bf: CanBuildFrom[Repr, (A1, B), That]): That = self.zip[A1, B, That](that)(bf)
+ override def zipAll[B, A1 >: A, That](that: Iterable[B], thisElem: A1, thatElem: B)(implicit bf: CanBuildFrom[Repr, (A1, B), That]): That = self.zipAll(that, thisElem, thatElem)(bf)
+ override def zipWithIndex[A1 >: A, That](implicit bf: CanBuildFrom[Repr, (A1, Int), That]): That = self.zipWithIndex(bf)
override def sameElements[B >: A](that: Iterable[B]): Boolean = self.sameElements(that)
- override def toStream: Stream[A] = self.toStream
override def view = self.view
override def view(from: Int, until: Int) = self.view(from, until)
}