jsr166y.forkjoin
Class ParallelLongArray.WithFilter

java.lang.Object
  extended by jsr166y.forkjoin.ParallelLongArray.WithLongMapping
      extended by jsr166y.forkjoin.ParallelLongArray.WithFilter
Direct Known Subclasses:
ParallelLongArray.WithBounds
Enclosing class:
ParallelLongArray

public abstract static class ParallelLongArray.WithFilter
extends ParallelLongArray.WithLongMapping

A restriction of parallel array operations to apply only to elements for which a selector returns true


Method Summary
abstract  ParallelLongArray allUniqueElements()
          Returns a new ParallelLongArray containing only unique elements (that is, without any duplicates).
abstract  ParallelLongArray.WithFilter orFilter(Ops.LongPredicate selector)
          Returns an operation prefix that causes a method to operate only on elements for which the current selector (if present) or the given selector returns true
abstract  void removeAll()
          Removes from the array all elements matching bound and/or filter constraints.
 void replaceWithCombination(long[] other, Ops.LongReducer combiner)
          Replaces elements with results of applying combine(thisElement, otherElement)
 void replaceWithCombination(ParallelLongArray.WithBounds other, Ops.LongReducer combiner)
          Replaces elements with results of applying combine(thisElement, otherElement)
 void replaceWithCombination(ParallelLongArray other, Ops.LongReducer combiner)
          Replaces elements with results of applying combine(thisElement, otherElement)
 void replaceWithGeneratedValue(Ops.LongGenerator generator)
          Replaces elements with results of applying the given generator.
 void replaceWithMappedIndex(Ops.MapperFromIntToLong mapper)
          Replaces elements with the results of applying the given mapper to their indices
 void replaceWithTransform(Ops.LongMapper mapper)
          Replaces elements with the results of applying the given mapper to their current values.
 void replaceWithValue(long value)
          Replaces elements with the given value.
abstract  ParallelLongArray.WithFilter withFilter(Ops.LongPredicate selector)
          Returns an operation prefix that causes a method to operate only on elements for which the current selector (if present) and the given selector returns true
 
Methods inherited from class jsr166y.forkjoin.ParallelLongArray.WithLongMapping
all, anyIndex, apply, max, max, min, min, reduce, size, sum, summary, summary, withMapping, withMapping, withMapping
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

replaceWithTransform

public void replaceWithTransform(Ops.LongMapper mapper)
Replaces elements with the results of applying the given mapper to their current values.

Parameters:
mapper - the mapper

replaceWithMappedIndex

public void replaceWithMappedIndex(Ops.MapperFromIntToLong mapper)
Replaces elements with the results of applying the given mapper to their indices

Parameters:
mapper - the mapper

replaceWithGeneratedValue

public void replaceWithGeneratedValue(Ops.LongGenerator generator)
Replaces elements with results of applying the given generator.

Parameters:
generator - the generator

replaceWithValue

public void replaceWithValue(long value)
Replaces elements with the given value.

Parameters:
value - the value

replaceWithCombination

public void replaceWithCombination(ParallelLongArray other,
                                   Ops.LongReducer combiner)
Replaces elements with results of applying combine(thisElement, otherElement)

Parameters:
other - the other array
combiner - the combiner
Throws:
java.lang.ArrayIndexOutOfBoundsException - if other array has fewer than upperBound elements.

replaceWithCombination

public void replaceWithCombination(ParallelLongArray.WithBounds other,
                                   Ops.LongReducer combiner)
Replaces elements with results of applying combine(thisElement, otherElement)

Parameters:
other - the other array segment
combiner - the combiner
Throws:
java.lang.ArrayIndexOutOfBoundsException - if other array has fewer than upperBound elements.

replaceWithCombination

public void replaceWithCombination(long[] other,
                                   Ops.LongReducer combiner)
Replaces elements with results of applying combine(thisElement, otherElement)

Parameters:
other - the other array
combiner - the combiner
Throws:
java.lang.ArrayIndexOutOfBoundsException - if other array has fewer than upperBound elements.

removeAll

public abstract void removeAll()
Removes from the array all elements matching bound and/or filter constraints.


allUniqueElements

public abstract ParallelLongArray allUniqueElements()
Returns a new ParallelLongArray containing only unique elements (that is, without any duplicates).

Returns:
the new ParallelLongArray

withFilter

public abstract ParallelLongArray.WithFilter withFilter(Ops.LongPredicate selector)
Returns an operation prefix that causes a method to operate only on elements for which the current selector (if present) and the given selector returns true

Parameters:
selector - the selector
Returns:
operation prefix

orFilter

public abstract ParallelLongArray.WithFilter orFilter(Ops.LongPredicate selector)
Returns an operation prefix that causes a method to operate only on elements for which the current selector (if present) or the given selector returns true

Parameters:
selector - the selector
Returns:
operation prefix