summaryrefslogtreecommitdiff
path: root/src/library/scala/collection/TraversableViewLike.scala
diff options
context:
space:
mode:
authorJosh Suereth <joshua.suereth@gmail.com>2011-12-18 12:05:12 -0500
committerJosh Suereth <joshua.suereth@gmail.com>2011-12-18 12:05:12 -0500
commitab07db12cc09fd34cfab5abca9dd0f01df5f77a5 (patch)
tree58d4e0bf3206cc680a2a96499cfc1774fcff5265 /src/library/scala/collection/TraversableViewLike.scala
parenta332a39d316f0223f00a31999b76a369f9e6fee4 (diff)
downloadscala-ab07db12cc09fd34cfab5abca9dd0f01df5f77a5.tar.gz
scala-ab07db12cc09fd34cfab5abca9dd0f01df5f77a5.tar.bz2
scala-ab07db12cc09fd34cfab5abca9dd0f01df5f77a5.zip
unzip(3) on view now returns view.
* Added unzip and unzip3 to TraversableViewLike * Added partest tests for unzip on views returning specific collection types. Closes SI-5053 Review by @paulp
Diffstat (limited to 'src/library/scala/collection/TraversableViewLike.scala')
-rw-r--r--src/library/scala/collection/TraversableViewLike.scala6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/library/scala/collection/TraversableViewLike.scala b/src/library/scala/collection/TraversableViewLike.scala
index 60870cc835..fbecad98fe 100644
--- a/src/library/scala/collection/TraversableViewLike.scala
+++ b/src/library/scala/collection/TraversableViewLike.scala
@@ -192,6 +192,12 @@ trait TraversableViewLike[+A,
override def groupBy[K](f: A => K): immutable.Map[K, This] =
thisSeq groupBy f mapValues (xs => newForced(xs))
+ override def unzip[A1, A2](implicit asPair: A => (A1, A2)) =
+ (newMapped(x => asPair(x)._1), newMapped(x => asPair(x)._2)) // TODO - Performance improvements.
+
+ override def unzip3[A1, A2, A3](implicit asTriple: A => (A1, A2, A3)) =
+ (newMapped(x => asTriple(x)._1), newMapped(x => asTriple(x)._2), newMapped(x => asTriple(x)._3)) // TODO - Performance improvements.
+
override def toString = viewToString
}