summaryrefslogtreecommitdiff
path: root/src/library/scala/collection/parallel/immutable/ParSeq.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/library/scala/collection/parallel/immutable/ParSeq.scala')
-rw-r--r--src/library/scala/collection/parallel/immutable/ParSeq.scala46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/library/scala/collection/parallel/immutable/ParSeq.scala b/src/library/scala/collection/parallel/immutable/ParSeq.scala
new file mode 100644
index 0000000000..68ed9a3139
--- /dev/null
+++ b/src/library/scala/collection/parallel/immutable/ParSeq.scala
@@ -0,0 +1,46 @@
+package scala.collection
+package parallel.immutable
+
+
+import scala.collection.generic.GenericParTemplate
+import scala.collection.generic.GenericCompanion
+import scala.collection.generic.GenericParCompanion
+import scala.collection.generic.CanCombineFrom
+import scala.collection.generic.ParFactory
+import scala.collection.parallel.ParSeqLike
+import scala.collection.parallel.Combiner
+
+
+
+
+/** An immutable variant of `ParSeq`.
+ *
+ * @define Coll mutable.ParSeq
+ * @define coll mutable parallel sequence
+ */
+trait ParSeq[+T]
+extends collection.immutable.Seq[T]
+ with collection.parallel.ParSeq[T]
+ with ParIterable[T]
+ with GenericParTemplate[T, ParSeq]
+ with ParSeqLike[T, ParSeq[T], Seq[T]]
+{
+ override def companion: GenericCompanion[ParSeq] with GenericParCompanion[ParSeq] = ParSeq
+ override def toSeq: ParSeq[T] = this
+}
+
+
+/** $factoryInfo
+ * @define Coll mutable.ParSeq
+ * @define coll mutable parallel sequence
+ */
+object ParSeq extends ParFactory[ParSeq] {
+ implicit def canBuildFrom[T]: CanCombineFrom[Coll, T, ParSeq[T]] = new GenericCanCombineFrom[T]
+
+ def newBuilder[T]: Combiner[T, ParSeq[T]] = ParVector.newBuilder[T]
+
+ def newCombiner[T]: Combiner[T, ParSeq[T]] = ParVector.newCombiner[T]
+}
+
+
+