diff options
author | Martin Odersky <odersky@gmail.com> | 2010-03-19 17:35:58 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2010-03-19 17:35:58 +0000 |
commit | c059e09cc7fee862e605c4d4d054447bc460aa2a (patch) | |
tree | 3f74ebdfc248e7fa2f7a43151ff0c771a9699909 /src/library/scala/collection/IterableProxyLike.scala | |
parent | 05c22ec2eed257c7b5e93aa4830a7666831fff48 (diff) | |
download | scala-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.scala | 26 |
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) } |