diff options
author | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-06-27 16:16:30 -0700 |
---|---|---|
committer | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-06-27 16:16:30 -0700 |
commit | b676b76d08d7f65767bcbd70d74c1df2af0f4a32 (patch) | |
tree | f713f9a999fdb15d23fadd8fe912af7cca38cc65 /src | |
parent | cbcca2c770eb079454c67437c01879ea7e30fd38 (diff) | |
parent | 674f4db1cd9323cb4e637dca6f4641d76c09fc84 (diff) | |
download | scala-b676b76d08d7f65767bcbd70d74c1df2af0f4a32.tar.gz scala-b676b76d08d7f65767bcbd70d74c1df2af0f4a32.tar.bz2 scala-b676b76d08d7f65767bcbd70d74c1df2af0f4a32.zip |
Merge pull request #785 from axel22/feature/to-par
Parallelize convertTo in parallel collection.
Diffstat (limited to 'src')
-rw-r--r-- | src/library/scala/collection/parallel/ParIterableLike.scala | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/library/scala/collection/parallel/ParIterableLike.scala b/src/library/scala/collection/parallel/ParIterableLike.scala index a7ec833193..815253b537 100644 --- a/src/library/scala/collection/parallel/ParIterableLike.scala +++ b/src/library/scala/collection/parallel/ParIterableLike.scala @@ -841,7 +841,7 @@ self: ParIterableLike[T, Repr, Sequential] => override def toBuffer[U >: T]: collection.mutable.Buffer[U] = seq.toBuffer // have additional, parallel buffers? - override def toTraversable: GenTraversable[T] = this.asInstanceOf[GenTraversable[T]] // TODO add ParTraversable[T] + override def toTraversable: GenTraversable[T] = this.asInstanceOf[GenTraversable[T]] override def toIterable: ParIterable[T] = this.asInstanceOf[ParIterable[T]] @@ -850,13 +850,13 @@ self: ParIterableLike[T, Repr, Sequential] => override def toSet[U >: T]: immutable.ParSet[U] = toParCollection[U, immutable.ParSet[U]](() => immutable.ParSet.newCombiner[U]) override def toMap[K, V](implicit ev: T <:< (K, V)): immutable.ParMap[K, V] = toParMap[K, V, immutable.ParMap[K, V]](() => immutable.ParMap.newCombiner[K, V]) - - // TODO(@alex22): make these better - override def toVector: Vector[T] = seq.toVector - - override def convertTo[Col[_]](implicit cbf: CanBuildFrom[Nothing, T, Col[T @uncheckedVariance]]): Col[T @uncheckedVariance] = seq.convertTo[Col] + override def toVector: Vector[T] = convertTo[Vector] + override def convertTo[Col[_]](implicit cbf: CanBuildFrom[Nothing, T, Col[T @uncheckedVariance]]): Col[T @uncheckedVariance] = if (cbf().isCombiner) { + toParCollection[T, Col[T]](() => cbf().asCombiner) + } else seq.convertTo(cbf) + /* tasks */ protected trait StrictSplitterCheckTask[R, Tp] extends Task[R, Tp] { |