summaryrefslogtreecommitdiff
path: root/src/library/scala/collection/parallel/immutable/package.scala
diff options
context:
space:
mode:
authorAleksandar Prokopec <axel22@gmail.com>2012-02-01 18:24:50 +0100
committerAleksandar Prokopec <axel22@gmail.com>2012-02-01 18:24:50 +0100
commit8aa87f15e3887dbeb1a39bfea002b56cf68c445a (patch)
treeeb76514b57160e1b7cbd2df0e009cbcdc2a5f922 /src/library/scala/collection/parallel/immutable/package.scala
parentfe289dc0fd8172012e4d57d09658e2dfd0a4cdcf (diff)
downloadscala-8aa87f15e3887dbeb1a39bfea002b56cf68c445a.tar.gz
scala-8aa87f15e3887dbeb1a39bfea002b56cf68c445a.tar.bz2
scala-8aa87f15e3887dbeb1a39bfea002b56cf68c445a.zip
Remove ParIterator and SignalContextPassingIterator.
This unclutters the namespace and makes defining custom parallel collections a lot easier.
Diffstat (limited to 'src/library/scala/collection/parallel/immutable/package.scala')
-rw-r--r--src/library/scala/collection/parallel/immutable/package.scala12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/library/scala/collection/parallel/immutable/package.scala b/src/library/scala/collection/parallel/immutable/package.scala
index 7b1e39d092..63635537d7 100644
--- a/src/library/scala/collection/parallel/immutable/package.scala
+++ b/src/library/scala/collection/parallel/immutable/package.scala
@@ -22,23 +22,19 @@ package immutable {
override def seq = throw new UnsupportedOperationException
def update(idx: Int, elem: T) = throw new UnsupportedOperationException
- type SCPI = SignalContextPassingIterator[ParIterator]
-
- class ParIterator(var i: Int = 0, val until: Int = length, elem: T = self.elem) extends super.ParIterator {
- me: SignalContextPassingIterator[ParIterator] =>
-
+ class ParIterator(var i: Int = 0, val until: Int = length, elem: T = self.elem) extends SeqSplitter[T] {
def remaining = until - i
def hasNext = i < until
def next = { i += 1; elem }
- def dup = new ParIterator(i, until, elem) with SCPI
+ def dup = new ParIterator(i, until, elem)
def psplit(sizes: Int*) = {
val incr = sizes.scanLeft(0)(_ + _)
- for ((start, end) <- incr.init zip incr.tail) yield new ParIterator(i + start, (i + end) min until, elem) with SCPI
+ for ((start, end) <- incr.init zip incr.tail) yield new ParIterator(i + start, (i + end) min until, elem)
}
def split = psplit(remaining / 2, remaining - remaining / 2)
}
- def splitter = new ParIterator with SCPI
+ def splitter = new ParIterator
}
}