class ParHashMap[K, V] extends ParMap[K, V] with GenericParMapTemplate[K, V, ParHashMap] with ParMapLike[K, V, ParHashMap, ParHashMap[K, V], HashMap[K, V]] with ParHashTable[K, V, DefaultEntry[K, V]] with Serializable
A parallel hash map.
ParHashMap
is a parallel map which internally keeps elements within a hash table.
It uses chaining to resolve collisions.
- K
type of the keys in the parallel hash map
- V
type of the values in the parallel hash map
- Self Type
- ParHashMap[K, V]
- Annotations
- @SerialVersionUID()
- Alphabetic
- By Inheritance
- ParHashMap
- Serializable
- ParHashTable
- WithContents
- HashTable
- HashUtils
- ParMap
- ParMapLike
- Cloneable
- Cloneable
- Shrinkable
- Growable
- Clearable
- ParIterable
- ParMap
- ParMapLike
- Equals
- ParIterable
- ParIterableLike
- Parallel
- CustomParallelizable
- Parallelizable
- IterableOnce
- GenericParMapTemplate
- GenericParTemplate
- HasNewCombiner
- GenericTraversableTemplate
- HasNewBuilder
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ParHashMap()
Type Members
- trait Accessor[R, Tp] extends StrictSplitterCheckTask[R, Tp]
Standard accessor task that iterates over the elements of the collection.
Standard accessor task that iterates over the elements of the collection.
- R
type of the result of this method (
R
for result).- Tp
the representation type of the task at hand.
- Attributes
- protected
- Definition Classes
- ParIterableLike
- class Aggregate[S] extends Accessor[S, Aggregate[S]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait BuilderOps[Elem, To] extends AnyRef
- Definition Classes
- ParIterableLike
- class Collect[S, That] extends Transformer[Combiner[S, That], Collect[S, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- abstract class Composite[FR, SR, R, First <: StrictSplitterCheckTask[FR, _], Second <: StrictSplitterCheckTask[SR, _]] extends NonDivisibleTask[R, Composite[FR, SR, R, First, Second]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Copy[U >: T, That] extends Transformer[Combiner[U, That], Copy[U, That]]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- class CopyToArray[U >: T, This >: Repr] extends Accessor[Unit, CopyToArray[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Count extends Accessor[Int, Count]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class CreateScanTree[U >: T] extends Transformer[ScanTree[U], CreateScanTree[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Drop[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Drop[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Exists extends Accessor[Boolean, Exists]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Filter[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Filter[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class FilterNot[U >: T, This >: Repr] extends Transformer[Combiner[U, This], FilterNot[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Find[U >: T] extends Accessor[Option[U], Find[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class FlatMap[S, That] extends Transformer[Combiner[S, That], FlatMap[S, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Fold[U >: T] extends Accessor[U, Fold[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Forall extends Accessor[Boolean, Forall]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Foreach[S] extends Accessor[Unit, Foreach[S]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class FromScanTree[U >: T, That] extends StrictSplitterCheckTask[Combiner[U, That], FromScanTree[U, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class GroupBy[K, U >: T] extends Transformer[HashMapCombiner[K, U], GroupBy[K, U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Map[S, That] extends Transformer[Combiner[S, That], Map[S, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Max[U >: T] extends Accessor[Option[U], Max[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Min[U >: T] extends Accessor[Option[U], Min[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait NonDivisible[R] extends NonDivisibleTask[R, NonDivisible[R]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait NonDivisibleTask[R, Tp] extends StrictSplitterCheckTask[R, Tp]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- abstract class ParComposite[FR, SR, R, First <: StrictSplitterCheckTask[FR, _], Second <: StrictSplitterCheckTask[SR, _]] extends Composite[FR, SR, R, First, Second]
Performs two tasks in parallel, and waits for both to finish.
Performs two tasks in parallel, and waits for both to finish.
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Partition[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Combiner[U, This]), Partition[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Product[U >: T] extends Accessor[U, Product[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Reduce[U >: T] extends Accessor[Option[U], Reduce[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- abstract class ResultMapping[R, Tp, R1] extends NonDivisibleTask[R1, ResultMapping[R, Tp, R1]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- case class ScanLeaf[U >: T](pit: IterableSplitter[U], op: (U, U) => U, from: Int, len: Int, prev: Option[ScanLeaf[U]], acc: U) extends ScanTree[U] with scala.Product with Serializable
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- case class ScanNode[U >: T](left: ScanTree[U], right: ScanTree[U]) extends ScanTree[U] with scala.Product with Serializable
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait ScanTree[U >: T] extends AnyRef
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- abstract class SeqComposite[FR, SR, R, First <: StrictSplitterCheckTask[FR, _], Second <: StrictSplitterCheckTask[SR, _]] extends Composite[FR, SR, R, First, Second]
Sequentially performs one task after another.
Sequentially performs one task after another.
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait SignallingOps[PI <: DelegatedSignalling] extends AnyRef
- Definition Classes
- ParIterableLike
- class Slice[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Slice[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Span[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Combiner[U, This]), Span[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class SplitAt[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Combiner[U, This]), SplitAt[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait StrictSplitterCheckTask[R, Tp] extends Task[R, Tp]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- class Sum[U >: T] extends Accessor[U, Sum[U]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class Take[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Take[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class TakeWhile[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Boolean), TakeWhile[U, This]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait TaskOps[R, Tp] extends AnyRef
- Definition Classes
- ParIterableLike
- class ToParCollection[U >: T, That] extends Transformer[Combiner[U, That], ToParCollection[U, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class ToParMap[K, V, That] extends Transformer[Combiner[(K, V), That], ToParMap[K, V, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- trait Transformer[R, Tp] extends Accessor[R, Tp]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- class Zip[U >: T, S, That] extends Transformer[Combiner[(U, S), That], Zip[U, S, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class ZipAll[U >: T, S, That] extends Transformer[Combiner[(U, S), That], ZipAll[U, S, That]]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- class DefaultKeySet extends ParSet[K]
- Attributes
- protected
- Definition Classes
- ParMapLike
- class DefaultValuesIterable extends ParIterable[V]
- Attributes
- protected
- Definition Classes
- ParMapLike
- type Entry = DefaultEntry[K, V]
- class ParHashMapIterator extends EntryIterator[(K, V), ParHashMapIterator]
- type SSCTask[R, Tp] = StrictSplitterCheckTask[R, Tp]
- Definition Classes
- ParIterableLike
- abstract class EntryIterator[T, +IterRepr <: IterableSplitter[T]] extends IterableSplitter[T] with SizeMapUtils
A parallel iterator returning all the entries.
A parallel iterator returning all the entries.
- Definition Classes
- ParHashTable
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- def +[U >: V](kv: (K, U)): ParHashMap[K, U]
- Definition Classes
- ParMapLike → ParMapLike
- final def ++[V2 >: V](xs: IterableOnce[(K, V2)]): ParHashMap[K, V2]
Alias for
concat
Alias for
concat
- Definition Classes
- ParMapLike
- Annotations
- @inline()
- def ++[U >: (K, V)](that: scala.IterableOnce[U]): ParIterable[U]
- Definition Classes
- ParIterableLike
- final def ++=(xs: IterableOnce[(K, V)]): ParHashMap.this.type
- Definition Classes
- Growable
- Annotations
- @inline()
- final def +=(elem: (K, V)): ParHashMap.this.type
- Definition Classes
- Growable
- Annotations
- @inline()
- def -(key: K): ParHashMap[K, V]
- Definition Classes
- ParMapLike → ParMapLike
- final def --=(xs: IterableOnce[K]): ParHashMap.this.type
- Definition Classes
- Shrinkable
- Annotations
- @inline()
- def -=(elem1: K, elem2: K, elems: K*): ParHashMap.this.type
- Definition Classes
- Shrinkable
- final def -=(elem: K): ParHashMap.this.type
- Definition Classes
- Shrinkable
- Annotations
- @inline()
- def /:[S](z: S)(op: (S, (K, V)) => S): S
- Definition Classes
- ParIterableLike
- def :\[S](z: S)(op: ((K, V), S) => S): S
- Definition Classes
- ParIterableLike
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val _loadFactor: Int
- Attributes
- protected
- Definition Classes
- HashTable
- def addAll(xs: IterableOnce[(K, V)]): ParHashMap.this.type
- Definition Classes
- Growable
- final def addEntry(e: DefaultEntry[K, V]): Unit
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- final def addEntry0(e: DefaultEntry[K, V], h: Int): Unit
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- def addOne(kv: (K, V)): ParHashMap.this.type
- Definition Classes
- ParHashMap → Growable
- def aggregate[S](z: => S)(seqop: (S, (K, V)) => S, combop: (S, S) => S): S
Aggregates the results of applying an operator to subsequent elements.
Aggregates the results of applying an operator to subsequent elements.
This is a more general form of
fold
andreduce
. It has similar semantics, but does not require the result to be a supertype of the element type. It traverses the elements in different partitions sequentially, usingseqop
to update the result, and then appliescombop
to results from different partitions. The implementation of this operation may operate on an arbitrary number of collection partitions, socombop
may be invoked arbitrary number of times.For example, one might want to process some elements and then produce a
Set
. In this case,seqop
would process an element and append it to the set, whilecombop
would concatenate two sets from different partitions together. The initial valuez
would be an empty set.pc.aggregate(Set[Int]())(_ += process(_), _ ++ _)
Another example is calculating geometric mean from a collection of doubles (one would typically require big doubles for this).
- S
the type of accumulated results
- z
the initial value for the accumulated result of the partition - this will typically be the neutral element for the
seqop
operator (e.g.Nil
for list concatenation or0
for summation) and may be evaluated more than once- seqop
an operator used to accumulate results within a partition
- combop
an associative operator used to combine results from different partitions
- Definition Classes
- ParIterableLike
- def alwaysInitSizeMap: Boolean
- Definition Classes
- ParHashTable → HashTable
- def apply(key: K): V
- Definition Classes
- ParMapLike
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- implicit def builder2ops[Elem, To](cb: Builder[Elem, To]): BuilderOps[Elem, To]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- final def calcSizeMapSize(tableLength: Int): Int
- Attributes
- protected
- Definition Classes
- HashTable
- def canEqual(that: Any): Boolean
- Definition Classes
- ParMapLike → Equals
- def clear(): Unit
- Definition Classes
- ParHashMap → ParMapLike → Clearable
- def clearTable(): Unit
- Definition Classes
- HashTable
- def clone(): ParHashMap[K, V]
- Definition Classes
- ParMapLike → Cloneable → AnyRef
- def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)]): ParHashMap[K2, V2]
Builds a new collection by applying a partial function to all elements of this parallel map
Builds a new collection by applying a partial function to all elements of this parallel map
on which the function is defined.
- K2
the key type of the returned parallel map .
- V2
the value type of the returned parallel map .
- pf
the partial function which filters and maps the parallel map .
- returns
a new parallel map resulting from applying the given partial function
pf
to each element on which it is defined and collecting the results. The order of the elements is preserved.
- Definition Classes
- ParMapLike
- def collect[S](pf: PartialFunction[(K, V), S]): ParIterable[S]
- Definition Classes
- ParIterableLike
- def combinerFactory[S, That](cbf: () => Combiner[S, That]): CombinerFactory[S, That]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- def combinerFactory: CombinerFactory[(K, V), ParHashMap[K, V]]
Creates a combiner factory.
Creates a combiner factory. Each combiner factory instance is used once per invocation of a parallel transformer method for a single collection.
The default combiner factory creates a new combiner every time it is requested, unless the combiner is thread-safe as indicated by its
canBeShared
method. In this case, the method returns a factory which returns the same combiner each time. This is typically done for concurrent parallel collections, the combiners of which allow thread safe access.- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- def companion: GenericParCompanion[ParIterable]
The factory companion object that builds instances of class
ParIterable
.The factory companion object that builds instances of class
ParIterable
. (or itsIterable
superclass where classParIterable
is not aSeq
.)- Definition Classes
- ParIterable → ParIterable → ParIterableLike → GenericParTemplate → GenericTraversableTemplate
- def concat[V2 >: V](that: IterableOnce[(K, V2)]): ParHashMap[K, V2]
Returns a new parallel map containing the elements from the left hand operand followed by the elements from the right hand operand.
Returns a new parallel map containing the elements from the left hand operand followed by the elements from the right hand operand. The element type of the parallel map is the most specific superclass encompassing the element types of the two operands.
- that
the collection or iterator to append.
- returns
a new parallel map which contains all elements of this parallel map followed by all elements of
suffix
.
- Definition Classes
- ParMapLike
- def contains(key: K): Boolean
- Definition Classes
- ParMapLike
- def copyToArray[U >: (K, V)](xs: Array[U], start: Int, len: Int): Unit
- Definition Classes
- ParIterableLike
- def copyToArray[U >: (K, V)](xs: Array[U], start: Int): Unit
- Definition Classes
- ParIterableLike
- def copyToArray[U >: (K, V)](xs: Array[U]): Unit
- Definition Classes
- ParIterableLike
- def count(p: ((K, V)) => Boolean): Int
- Definition Classes
- ParIterableLike
- def createNewEntry(key: K, value: V): Entry
- Definition Classes
- ParHashMap → HashTable
- def debugBuffer: ArrayBuffer[String]
- Definition Classes
- ParIterableLike
- def default(key: K): V
- Definition Classes
- ParMapLike
- implicit def delegatedSignalling2ops[PI <: DelegatedSignalling](it: PI): SignallingOps[PI]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def drop(n: Int): ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def dropWhile(pred: ((K, V)) => Boolean): ParHashMap[K, V]
Drops all elements in the longest prefix of elements that satisfy the predicate, and returns a collection composed of the remaining elements.
Drops all elements in the longest prefix of elements that satisfy the predicate, and returns a collection composed of the remaining elements.
This method will use
indexFlag
signalling capabilities. This means that splitters may set and read theindexFlag
state. The index flag is initially set to maximum integer value.- pred
the predicate used to test the elements
- returns
a collection composed of all the elements after the longest prefix of elements in this parallel iterable that satisfy the predicate
pred
- Definition Classes
- ParIterableLike
- def elemEquals(key1: K, key2: K): Boolean
- Attributes
- protected
- Definition Classes
- HashTable
- def elemHashCode(key: K): Int
- Attributes
- protected[scala.collection]
- Definition Classes
- HashUtils
- def empty: ParHashMap[K, V]
- Definition Classes
- ParHashMap → ParMap → ParMap → ParMapLike
- def entriesIterator: Iterator[DefaultEntry[K, V]]
- Definition Classes
- HashTable
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(that: Any): Boolean
Compares two maps structurally; i.e., checks if all mappings contained in this map are also contained in the other map, and vice versa.
Compares two maps structurally; i.e., checks if all mappings contained in this map are also contained in the other map, and vice versa.
- that
the other map
- returns
true
if both maps contain exactly the same mappings,false
otherwise.
- Definition Classes
- ParMapLike → Equals → AnyRef → Any
- def exists(p: ((K, V)) => Boolean): Boolean
Tests whether a predicate holds for some element of this parallel iterable.
Tests whether a predicate holds for some element of this parallel iterable.
This method will use
abort
signalling capabilities. This means that splitters may send and readabort
signals.- p
a predicate used to test elements
- returns
true if
p
holds for some element, false otherwise
- Definition Classes
- ParIterableLike
- def filter(pred: ((K, V)) => Boolean): ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def filterKeys(p: (K) => Boolean): parallel.ParMap[K, V]
- Definition Classes
- ParMapLike
- def filterNot(pred: ((K, V)) => Boolean): ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def find(p: ((K, V)) => Boolean): Option[(K, V)]
Finds some element in the collection for which the predicate holds, if such an element exists.
Finds some element in the collection for which the predicate holds, if such an element exists. The element may not necessarily be the first such element in the iteration order.
If there are multiple elements obeying the predicate, the choice is nondeterministic.
This method will use
abort
signalling capabilities. This means that splitters may send and readabort
signals.- p
predicate used to test the elements
- returns
an option value with the element if such an element exists, or
None
otherwise
- Definition Classes
- ParIterableLike
- final def findEntry(key: K): DefaultEntry[K, V]
- Definition Classes
- HashTable
- final def findEntry0(key: K, h: Int): DefaultEntry[K, V]
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- def findOrAddEntry(key: K, value: V): DefaultEntry[K, V]
- Definition Classes
- HashTable
- def flatMap[K2, V2](f: ((K, V)) => IterableOnce[(K2, V2)]): ParHashMap[K2, V2]
Builds a new map by applying a function to all elements of this parallel map
Builds a new map by applying a function to all elements of this parallel map
and using the elements of the resulting collections.
- f
the function to apply to each element.
- returns
a new parallel map resulting from applying the given collection-valued function
f
to each element of this parallel map and concatenating the results.
- Definition Classes
- ParMapLike
- def flatMap[S](f: ((K, V)) => scala.IterableOnce[S]): ParIterable[S]
- Definition Classes
- ParIterableLike
- def flatten[B]: <error>
[use case] Converts this parallel hash map of traversable collections into a parallel hash map formed by the elements of these traversable collections.
[use case]Converts this parallel hash map of traversable collections into a parallel hash map formed by the elements of these traversable collections.
The resulting collection's type will be guided by the static type of parallel hash map . For example:
val xs = List( Set(1, 2, 3), Set(1, 2, 3) ).flatten // xs == List(1, 2, 3, 1, 2, 3) val ys = Set( List(1, 2, 3), List(3, 2, 1) ).flatten // ys == Set(1, 2, 3)
- B
the type of the elements of each traversable collection.
- returns
a new parallel hash map resulting from concatenating all element parallel hash map s.
- Definition Classes
- GenericTraversableTemplate
Full Signaturedef flatten[B](implicit asTraversable: ((K, V)) => scala.IterableOnce[B]): ParIterable[B]
- def fold[U >: (K, V)](z: U)(op: (U, U) => U): U
Folds the elements of this sequence using the specified associative binary operator.
Folds the elements of this sequence using the specified associative binary operator. The order in which the elements are reduced is unspecified and may be nondeterministic.
Note this method has a different signature than the
foldLeft
andfoldRight
methods of the traitTraversable
. The result of folding may only be a supertype of this parallel collection's type parameterT
.- U
a type parameter for the binary operator, a supertype of
T
.- z
a neutral element for the fold operation, it may be added to the result an arbitrary number of times, not changing the result (e.g.
Nil
for list concatenation, 0 for addition, or 1 for multiplication)- op
a binary operator that must be associative
- returns
the result of applying fold operator
op
between all the elements andz
- Definition Classes
- ParIterableLike
- def foldLeft[S](z: S)(op: (S, (K, V)) => S): S
- Definition Classes
- ParIterableLike
- def foldRight[S](z: S)(op: ((K, V), S) => S): S
- Definition Classes
- ParIterableLike
- def forall(p: ((K, V)) => Boolean): Boolean
Tests whether a predicate holds for all elements of this parallel iterable.
Tests whether a predicate holds for all elements of this parallel iterable.
This method will use
abort
signalling capabilities. This means that splitters may send and readabort
signals.- p
a predicate used to test elements
- returns
true if
p
holds for all elements, false otherwise
- Definition Classes
- ParIterableLike
- def foreach[U](f: ((K, V)) => U): Unit
Applies a function
f
to all the elements of parallel iterable in an undefined order.Applies a function
f
to all the elements of parallel iterable in an undefined order.- U
the result type of the function applied to each element, which is always discarded
- f
function applied to each element
- Definition Classes
- ParIterableLike
- def foreachEntry[U](f: (DefaultEntry[K, V]) => U): Unit
- Definition Classes
- HashTable
- def genericBuilder[B]: Combiner[B, ParIterable[B]]
The generic builder that builds instances of $Coll at arbitrary element types.
The generic builder that builds instances of $Coll at arbitrary element types.
- Definition Classes
- GenericParTemplate → GenericTraversableTemplate
- def genericCombiner[B]: Combiner[B, ParIterable[B]]
- Definition Classes
- GenericParTemplate
- def genericMapCombiner[P, Q]: Combiner[(P, Q), ParHashMap[P, Q]]
- Definition Classes
- GenericParMapTemplate
- def get(key: K): Option[V]
- Definition Classes
- ParHashMap → ParMapLike
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getOrElse[U >: V](key: K, default: => U): U
- Definition Classes
- ParMapLike
- def groupBy[K](f: ((K, V)) => K): immutable.ParMap[K, ParHashMap[K, V]]
- Definition Classes
- ParIterableLike
- def hasDefiniteSize: Boolean
- Definition Classes
- ParIterableLike
- def hashCode(): Int
- Definition Classes
- ParMapLike → AnyRef → Any
- def head: (K, V)
- Definition Classes
- ParIterableLike
- def headOption: Option[(K, V)]
- Definition Classes
- ParIterableLike
- final def improve(hcode: Int, seed: Int): Int
- Attributes
- protected
- Definition Classes
- HashUtils
- final def index(hcode: Int): Int
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- def init: ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def initTaskSupport(): Unit
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def initWithContents(c: Contents[K, DefaultEntry[K, V]]): Unit
- Attributes
- protected
- Definition Classes
- WithContents
- def initialSize: Int
- Attributes
- protected
- Definition Classes
- HashTable
- def isDefinedAt(key: K): Boolean
- Definition Classes
- ParMapLike
- def isEmpty: Boolean
- Definition Classes
- ParIterableLike
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def isSizeMapDefined: Boolean
- Attributes
- protected
- Definition Classes
- HashTable
- def isStrictSplitterCollection: Boolean
Denotes whether this parallel collection has strict splitters.
Denotes whether this parallel collection has strict splitters.
This is true in general, and specific collection instances may choose to override this method. Such collections will fail to execute methods which rely on splitters being strict, i.e. returning a correct value in the
remaining
method.This method helps ensure that such failures occur on method invocations, rather than later on and in unpredictable ways.
- Definition Classes
- ParIterableLike
- final def isTraversableAgain: Boolean
- Definition Classes
- ParIterableLike
- def iterator: Splitter[(K, V)]
Creates a new split iterator used to traverse the elements of this collection.
Creates a new split iterator used to traverse the elements of this collection.
By default, this method is implemented in terms of the protected
splitter
method.- returns
a split iterator
- Definition Classes
- ParIterableLike → IterableOnce
- def keySet: parallel.ParSet[K]
- Definition Classes
- ParMapLike
- def keys: parallel.ParIterable[K]
- Definition Classes
- ParMapLike
- def keysIterator: IterableSplitter[K]
- Definition Classes
- ParMapLike
- def knownSize: Int
- Definition Classes
- ParHashMap → ParMap → ParMapLike → Growable → IterableOnce
- def last: (K, V)
- Definition Classes
- ParIterableLike
- def lastOption: Option[(K, V)]
- Definition Classes
- ParIterableLike
- def map[K2, V2](f: ((K, V)) => (K2, V2)): ParHashMap[K2, V2]
Builds a new map by applying a function to all elements of this parallel map .
Builds a new map by applying a function to all elements of this parallel map .
- f
the function to apply to each element.
- returns
a new parallel map resulting from applying the given function
f
to each element of this parallel map and collecting the results.
- Definition Classes
- ParMapLike
- def map[S](f: ((K, V)) => S): ParIterable[S]
- Definition Classes
- ParIterableLike
- def mapCompanion: GenericParMapCompanion[ParHashMap]
- Definition Classes
- ParHashMap → ParMap → ParMap → ParMapLike → GenericParMapTemplate
- def mapValues[S](f: (V) => S): parallel.ParMap[K, S]
- Definition Classes
- ParMapLike
- def max[U >: (K, V)](implicit ord: Ordering[U]): (K, V)
- Definition Classes
- ParIterableLike
- def maxBy[S](f: ((K, V)) => S)(implicit cmp: Ordering[S]): (K, V)
- Definition Classes
- ParIterableLike
- def min[U >: (K, V)](implicit ord: Ordering[U]): (K, V)
- Definition Classes
- ParIterableLike
- def minBy[S](f: ((K, V)) => S)(implicit cmp: Ordering[S]): (K, V)
- Definition Classes
- ParIterableLike
- def mkString: String
- Definition Classes
- ParIterableLike
- def mkString(sep: String): String
- Definition Classes
- ParIterableLike
- def mkString(start: String, sep: String, end: String): String
- Definition Classes
- ParIterableLike
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def newBuilder: Builder[(K, V), ParIterable[(K, V)]]
The builder that builds instances of type $Coll[A]
The builder that builds instances of type $Coll[A]
- Attributes
- protected[this]
- Definition Classes
- GenericParTemplate → GenericTraversableTemplate → HasNewBuilder
- def newCombiner: ParHashMapCombiner[K, V]
- Attributes
- protected[this]
- Definition Classes
- ParHashMap → ParMap → GenericParMapTemplate → GenericParTemplate → HasNewCombiner
- final def nnSizeMapAdd(h: Int): Unit
- Attributes
- protected
- Definition Classes
- HashTable
- final def nnSizeMapRemove(h: Int): Unit
- Attributes
- protected
- Definition Classes
- HashTable
- final def nnSizeMapReset(tableLength: Int): Unit
- Attributes
- protected
- Definition Classes
- HashTable
- def nonEmpty: Boolean
- Definition Classes
- ParIterableLike
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def par: ParHashMap[K, V]
Returns a parallel implementation of this collection.
Returns a parallel implementation of this collection.
For most collection types, this method creates a new parallel collection by copying all the elements. For these collection,
par
takes linear time. Mutable collections in this category do not produce a mutable parallel collection that has the same underlying dataset, so changes in one collection will not be reflected in the other one.Specific collections (e.g.
ParArray
ormutable.ParHashMap
) override this default behaviour by creating a parallel collection which shares the same underlying dataset. For these collections,par
takes constant or sublinear time.All parallel collections return a reference to themselves.
- returns
a parallel implementation of this collection
- Definition Classes
- ParIterableLike → CustomParallelizable → Parallelizable
- def parCombiner: Combiner[(K, V), ParHashMap[K, V]]
The default
par
implementation uses the combiner provided by this method to create a new parallel collection.The default
par
implementation uses the combiner provided by this method to create a new parallel collection.- returns
a combiner for the parallel collection of type
ParRepr
- Attributes
- protected[this]
- Definition Classes
- CustomParallelizable → Parallelizable
- def partition(pred: ((K, V)) => Boolean): (ParHashMap[K, V], ParHashMap[K, V])
- Definition Classes
- ParIterableLike
- def product[U >: (K, V)](implicit num: Numeric[U]): U
- Definition Classes
- ParIterableLike
- def put(key: K, value: V): Option[V]
- Definition Classes
- ParHashMap → ParMapLike
- def reduce[U >: (K, V)](op: (U, U) => U): U
Reduces the elements of this sequence using the specified associative binary operator.
Reduces the elements of this sequence using the specified associative binary operator.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
Note this method has a different signature than the
reduceLeft
andreduceRight
methods of the traitTraversable
. The result of reducing may only be a supertype of this parallel collection's type parameterT
.- U
A type parameter for the binary operator, a supertype of
T
.- op
A binary operator that must be associative.
- returns
The result of applying reduce operator
op
between all the elements if the collection is nonempty.
- Definition Classes
- ParIterableLike
- Exceptions thrown
UnsupportedOperationException
if this parallel iterable is empty.
- def reduceLeft[U >: (K, V)](op: (U, (K, V)) => U): U
- Definition Classes
- ParIterableLike
- def reduceLeftOption[U >: (K, V)](op: (U, (K, V)) => U): Option[U]
- Definition Classes
- ParIterableLike
- def reduceOption[U >: (K, V)](op: (U, U) => U): Option[U]
Optionally reduces the elements of this sequence using the specified associative binary operator.
Optionally reduces the elements of this sequence using the specified associative binary operator.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
Note this method has a different signature than the
reduceLeftOption
andreduceRightOption
methods of the traitTraversable
. The result of reducing may only be a supertype of this parallel collection's type parameterT
.- U
A type parameter for the binary operator, a supertype of
T
.- op
A binary operator that must be associative.
- returns
An option value containing result of applying reduce operator
op
between all the elements if the collection is nonempty, andNone
otherwise.
- Definition Classes
- ParIterableLike
- def reduceRight[U >: (K, V)](op: ((K, V), U) => U): U
- Definition Classes
- ParIterableLike
- def reduceRightOption[U >: (K, V)](op: ((K, V), U) => U): Option[U]
- Definition Classes
- ParIterableLike
- def remove(key: K): Option[V]
- final def removeEntry(key: K): DefaultEntry[K, V]
- Definition Classes
- HashTable
- def repr: ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def reuse[S, That](oldc: Option[Combiner[S, That]], newc: Combiner[S, That]): Combiner[S, That]
Optionally reuses an existing combiner for better performance.
Optionally reuses an existing combiner for better performance. By default it doesn't - subclasses may override this behaviour. The provided combiner
oldc
that can potentially be reused will be either some combiner from the previous computational task, orNone
if there was no previous phase (in which case this method must returnnewc
).- oldc
The combiner that is the result of the previous task, or
None
if there was no previous task.- newc
The new, empty combiner that can be used.
- returns
Either
newc
oroldc
.
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def sameElements[U >: (K, V)](that: scala.IterableOnce[U]): Boolean
- Definition Classes
- ParIterableLike
- def scan[U >: (K, V)](z: U)(op: (U, U) => U): ParIterable[U]
Computes a prefix scan of the elements of the collection.
Computes a prefix scan of the elements of the collection.
Note: The neutral element
z
may be applied more than once.- U
element type of the resulting collection
- z
neutral element for the operator
op
- op
the associative operator for the scan
- returns
a new parallel iterable containing the prefix scan of the elements in this parallel iterable
- Definition Classes
- ParIterableLike
- def scanBlockSize: Int
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- def scanLeft[S](z: S)(op: (S, (K, V)) => S): scala.Iterable[S]
- Definition Classes
- ParIterableLike
- def scanRight[S](z: S)(op: ((K, V), S) => S): scala.Iterable[S]
- Definition Classes
- ParIterableLike
- val seedvalue: Int
- Attributes
- protected
- Definition Classes
- HashTable
- def seq: HashMap[K, V]
A sequential collection containing the same elements as this collection
A sequential collection containing the same elements as this collection
- Definition Classes
- ParHashMap → ParMap → ParIterable → ParIterableLike → Parallelizable → GenericTraversableTemplate
- def sequentially[S, That <: Parallel](b: (HashMap[K, V]) => HashMap[K, V]): ParHashMap[K, V]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
- final def size: Int
- Definition Classes
- HashTable
- final def sizeMapBucketBitSize: Int
- Attributes
- protected
- Definition Classes
- HashUtils
- final def sizeMapBucketSize: Int
- Attributes
- protected
- Definition Classes
- HashUtils
- final def sizeMapDisable(): Unit
- Attributes
- protected
- Definition Classes
- HashTable
- def sizeMapInit(tableLength: Int): Unit
- Attributes
- protected
- Definition Classes
- HashTable
- final def sizeMapInitAndRebuild(): Unit
- Attributes
- protected
- Definition Classes
- HashTable
- val sizemap: Array[Int]
- Attributes
- protected
- Definition Classes
- HashTable
- def slice(unc_from: Int, unc_until: Int): ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def span(pred: ((K, V)) => Boolean): (ParHashMap[K, V], ParHashMap[K, V])
Splits this parallel iterable into a prefix/suffix pair according to a predicate.
Splits this parallel iterable into a prefix/suffix pair according to a predicate.
This method will use
indexFlag
signalling capabilities. This means that splitters may set and read theindexFlag
state. The index flag is initially set to maximum integer value.- pred
the predicate used to test the elements
- returns
a pair consisting of the longest prefix of the collection for which all the elements satisfy
pred
, and the rest of the collection
- Definition Classes
- ParIterableLike
- def splitAt(n: Int): (ParHashMap[K, V], ParHashMap[K, V])
- Definition Classes
- ParIterableLike
- def splitter: ParHashMapIterator
Creates a new parallel iterator used to traverse the elements of this parallel collection.
Creates a new parallel iterator used to traverse the elements of this parallel collection. This iterator is more specific than the iterator of the returned by
iterator
, and augmented with additional accessor and transformer methods.- returns
a parallel iterator
- Definition Classes
- ParHashMap → ParIterableLike
- def stepper[S <: Stepper[_]](implicit shape: StepperShape[(K, V), S]): S
- Definition Classes
- IterableOnce
- def stringPrefix: String
- Definition Classes
- ParHashMap → ParMap → ParIterable → ParIterableLike
- def subtractAll(xs: IterableOnce[K]): ParHashMap.this.type
- Definition Classes
- Shrinkable
- def subtractOne(key: K): ParHashMap.this.type
- Definition Classes
- ParHashMap → Shrinkable
- def sum[U >: (K, V)](implicit num: Numeric[U]): U
- Definition Classes
- ParIterableLike
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val table: Array[HashEntry[K, DefaultEntry[K, V]]]
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- val tableSize: Int
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- def tableSizeSeed: Int
- Attributes
- protected
- Definition Classes
- HashTable
- def tail: ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def take(n: Int): ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def takeWhile(pred: ((K, V)) => Boolean): ParHashMap[K, V]
Takes the longest prefix of elements that satisfy the predicate.
Takes the longest prefix of elements that satisfy the predicate.
This method will use
indexFlag
signalling capabilities. This means that splitters may set and read theindexFlag
state. The index flag is initially set to maximum integer value.- pred
the predicate used to test the elements
- returns
the longest prefix of this parallel iterable of elements that satisfy the predicate
pred
- Definition Classes
- ParIterableLike
- implicit def task2ops[R, Tp](tsk: SSCTask[R, Tp]): TaskOps[R, Tp]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def tasksupport: TaskSupport
The task support object which is responsible for scheduling and load-balancing tasks to processors.
The task support object which is responsible for scheduling and load-balancing tasks to processors.
- Definition Classes
- ParIterableLike
- See also
- def tasksupport_=(ts: TaskSupport): Unit
Changes the task support object which is responsible for scheduling and load-balancing tasks to processors.
Changes the task support object which is responsible for scheduling and load-balancing tasks to processors.
A task support object can be changed in a parallel collection after it has been created, but only during a quiescent period, i.e. while there are no concurrent invocations to parallel collection methods.
Here is a way to change the task support of a parallel collection:
import scala.collection.parallel._ val pc = mutable.ParArray(1, 2, 3) pc.tasksupport = new ForkJoinTaskSupport( new java.util.concurrent.ForkJoinPool(2))
- Definition Classes
- ParIterableLike
- See also
- val threshold: Int
- Attributes
- protected[scala.collection]
- Definition Classes
- HashTable
- def to[C](factory: Factory[(K, V), C]): C
- Definition Classes
- ParIterableLike
- def toArray[U >: (K, V)](implicit arg0: ClassTag[U]): Array[U]
- Definition Classes
- ParIterableLike
- def toBuffer[U >: (K, V)]: Buffer[U]
- Definition Classes
- ParIterableLike
- def toIndexedSeq: immutable.IndexedSeq[(K, V)]
- Definition Classes
- ParIterableLike
- def toIterable: ParIterable[(K, V)]
- Definition Classes
- ParIterable → ParIterableLike
- def toIterator: scala.Iterator[(K, V)]
- Definition Classes
- ParIterableLike
- def toList: List[(K, V)]
- Definition Classes
- ParIterableLike
- def toMap[K, V](implicit ev: <:<[(K, V), (K, V)]): immutable.ParMap[K, V]
- Definition Classes
- ParIterableLike
- def toParCollection[U >: (K, V), That](cbf: () => Combiner[U, That]): That
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def toParMap[K, V, That](cbf: () => Combiner[(K, V), That])(implicit ev: <:<[(K, V), (K, V)]): That
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def toSeq: ParSeq[(K, V)]
- Definition Classes
- ParIterable → ParIterableLike
- def toSet[U >: (K, V)]: immutable.ParSet[U]
- Definition Classes
- ParIterableLike
- def toString(): String
- Definition Classes
- ParIterableLike → AnyRef → Any
- def toVector: Vector[(K, V)]
- Definition Classes
- ParIterableLike
- def transpose[B](implicit asTraversable: ((K, V)) => scala.IterableOnce[B]): ParIterable[ParIterable[B]]
Transposes this collection of traversable collections into a collection of collections.
Transposes this collection of traversable collections into a collection of collections.
The resulting collection's type will be guided by the static type of collection. For example:
val xs = List( Set(1, 2, 3), Set(4, 5, 6)).transpose // xs == List( // List(1, 4), // List(2, 5), // List(3, 6)) val ys = Vector( List(1, 2, 3), List(4, 5, 6)).transpose // ys == Vector( // Vector(1, 4), // Vector(2, 5), // Vector(3, 6))
- B
the type of the elements of each traversable collection.
- asTraversable
an implicit conversion which asserts that the element type of this collection is a
Traversable
.- returns
a two-dimensional collection of collections which has as nth row the nth column of this collection.
- Definition Classes
- GenericTraversableTemplate
- Annotations
- @migration
- Migration
(Changed in version 2.9.0)
transpose
throws anIllegalArgumentException
if collections are not uniformly sized.- Exceptions thrown
IllegalArgumentException
if all collections in this collection are not of the same size.
- def unzip[A1, A2](implicit asPair: ((K, V)) => (A1, A2)): (ParIterable[A1], ParIterable[A2])
Converts this collection of pairs into two collections of the first and second half of each pair.
Converts this collection of pairs into two collections of the first and second half of each pair.
val xs = $Coll( (1, "one"), (2, "two"), (3, "three")).unzip // xs == ($Coll(1, 2, 3), // $Coll(one, two, three))
- A1
the type of the first half of the element pairs
- A2
the type of the second half of the element pairs
- asPair
an implicit conversion which asserts that the element type of this collection is a pair.
- returns
a pair of collections, containing the first, respectively second half of each element pair of this collection.
- Definition Classes
- GenericTraversableTemplate
- def unzip3[A1, A2, A3](implicit asTriple: ((K, V)) => (A1, A2, A3)): (ParIterable[A1], ParIterable[A2], ParIterable[A3])
Converts this collection of triples into three collections of the first, second, and third element of each triple.
Converts this collection of triples into three collections of the first, second, and third element of each triple.
val xs = $Coll( (1, "one", '1'), (2, "two", '2'), (3, "three", '3')).unzip3 // xs == ($Coll(1, 2, 3), // $Coll(one, two, three), // $Coll(1, 2, 3))
- A1
the type of the first member of the element triples
- A2
the type of the second member of the element triples
- A3
the type of the third member of the element triples
- asTriple
an implicit conversion which asserts that the element type of this collection is a triple.
- returns
a triple of collections, containing the first, second, respectively third member of each element triple of this collection.
- Definition Classes
- GenericTraversableTemplate
- def update(key: K, value: V): Unit
- def updated[V1 >: V](key: K, value: V1): ParHashMap[K, V1]
- Definition Classes
- ParMapLike
- def values: parallel.ParIterable[V]
- Definition Classes
- ParMapLike
- def valuesIterator: IterableSplitter[V]
- Definition Classes
- ParMapLike
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def withDefault(d: (K) => V): ParMap[K, V]
The same map with a given default function.
The same map with a given default function. Note:
get
,contains
,iterator
,keys
, etc are not affected bywithDefault
.Invoking transformer methods (e.g.
map
) will not preserve the default value.- d
the function mapping keys to values, used for non-present keys
- returns
a wrapper of the map with a default value
- Definition Classes
- ParMap
- def withDefaultValue(d: V): ParMap[K, V]
The same map with a given default value.
The same map with a given default value.
Invoking transformer methods (e.g.
map
) will not preserve the default value.- d
default value used for non-present keys
- returns
a wrapper of the map with a default value
- Definition Classes
- ParMap
- def withFilter(pred: ((K, V)) => Boolean): ParHashMap[K, V]
- Definition Classes
- ParIterableLike
- def wrap[R](body: => R): NonDivisible[R]
- Attributes
- protected
- Definition Classes
- ParIterableLike
- def zip[U >: (K, V), S](that: scala.Iterable[S]): ParIterable[(U, S)]
- Definition Classes
- ParIterableLike
- def zip[U >: (K, V), S](that: parallel.ParIterable[S]): ParIterable[(U, S)]
- Definition Classes
- ParIterableLike
- def zipAll[S, U >: (K, V)](that: parallel.ParIterable[S], thisElem: U, thatElem: S): ParIterable[(U, S)]
- Definition Classes
- ParIterableLike
- def zipWithIndex[U >: (K, V)]: ParIterable[(U, Int)]
Zips this parallel iterable with its indices.
Zips this parallel iterable with its indices.
- U
the type of the first half of the returned pairs (this is always a supertype of the collection's element type
T
).- returns
A new collection of type
ParIterable
containing pairs consisting of all elements of this parallel iterable paired with their index. Indices start at 0.
- Definition Classes
- ParIterableLike
Deprecated Value Members
- final def +=(elem1: (K, V), elem2: (K, V), elems: (K, V)*): ParHashMap.this.type
- Definition Classes
- Growable
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.13.0) Use
++=
(addAll) instead of varargs+=
- def toStream: Stream[(K, V)]
- Definition Classes
- ParIterableLike
- Annotations
- @deprecated
- Deprecated
(Since version 0.1.3) Use
to(LazyList)
instead.
- def toTraversable: parallel.ParIterable[(K, V)]
- Definition Classes
- ParIterableLike
- Annotations
- @deprecated
- Deprecated
(Since version 0.1.3) Use
toIterable
instead