jsr166z.forkjoin
Class ParallelArray.WithLongMapping<T>

java.lang.Object
  extended by jsr166z.forkjoin.ParallelArray.WithLongMapping<T>
Enclosing class:
ParallelArray<T>

public abstract static class ParallelArray.WithLongMapping<T>
extends java.lang.Object

A modifier for parallel array operations to apply to mappings of elements to longs, not to the elements themselves


Method Summary
abstract  long any()
          Returns mapping of some element matching bound and filter constraints
abstract  int anyIndex()
          Returns the index of some element matching bound and filter constraints, or -1 if none.
 void apply({long=>void} procedure)
          Applies the given procedure
 int indexOfMax()
          Returns the index corresponding to the element for which the given mapping is greatest, or -1 if empty
 int indexOfMax({long,long=>int} comparator)
          Returns the index corresponding to the element for which the given mapping is greatest, or -1 if empty
 int indexOfMin()
          Returns the index corresponding to the element for which the given mapping is least, or -1 if empty
 int indexOfMin({long,long=>int} comparator)
          Returns the index corresponding to the element for which the given mapping is least, or -1 if empty
 long max()
          Returns the maximum element, or Long.MIN_VALUE if empty
 long max({long,long=>int} comparator)
          Returns the maximum element, or Long.MIN_VALUE if empty
 long min()
          Returns the minimum element, or Long.MAX_VALUE if empty
 long min({long,long=>int} comparator)
          Returns the minimum element, or Long.MAX_VALUE if empty
abstract  ParallelLongArray newArray()
          Returns a new ParallelLongArray holding mappings
 long reduce({long,long=>long} reducer, long base)
          Returns reduction of mapped elements
abstract  int size()
          Return the number of elements selected using bound or filter restrictions.
 long sum()
          Returns the sum of elements
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

apply

public void apply({long=>void} procedure)
Applies the given procedure

Parameters:
procedure - the procedure

reduce

public long reduce({long,long=>long} reducer,
                   long base)
Returns reduction of mapped elements

Parameters:
reducer - the reducer
base - the result for an empty array
Returns:
reduction

min

public long min()
Returns the minimum element, or Long.MAX_VALUE if empty

Returns:
minimum element, or Long.MAX_VALUE if empty

min

public long min({long,long=>int} comparator)
Returns the minimum element, or Long.MAX_VALUE if empty

Parameters:
comparator - the comparator
Returns:
minimum element, or Long.MAX_VALUE if empty

max

public long max()
Returns the maximum element, or Long.MIN_VALUE if empty

Returns:
maximum element, or Long.MIN_VALUE if empty

max

public long max({long,long=>int} comparator)
Returns the maximum element, or Long.MIN_VALUE if empty

Parameters:
comparator - the comparator
Returns:
maximum element, or Long.MIN_VALUE if empty

sum

public long sum()
Returns the sum of elements

Returns:
the sum of elements

indexOfMin

public int indexOfMin()
Returns the index corresponding to the element for which the given mapping is least, or -1 if empty

Returns:
the index of least element or -1 if empty.

indexOfMax

public int indexOfMax()
Returns the index corresponding to the element for which the given mapping is greatest, or -1 if empty

Returns:
the index of greatest element or -1 if empty.

indexOfMin

public int indexOfMin({long,long=>int} comparator)
Returns the index corresponding to the element for which the given mapping is least, or -1 if empty

Parameters:
comparator - the comparator
Returns:
the index of least element or -1 if empty.

indexOfMax

public int indexOfMax({long,long=>int} comparator)
Returns the index corresponding to the element for which the given mapping is greatest, or -1 if empty

Parameters:
comparator - the comparator
Returns:
the index of greatest element or -1 if empty.

newArray

public abstract ParallelLongArray newArray()
Returns a new ParallelLongArray holding mappings

Returns:
a new ParallelLongArray holding mappings

size

public abstract int size()
Return the number of elements selected using bound or filter restrictions. Note that this method must evaluate all selectors to return its result.

Returns:
the number of elements

anyIndex

public abstract int anyIndex()
Returns the index of some element matching bound and filter constraints, or -1 if none.

Returns:
index of matching element, or -1 if none.

any

public abstract long any()
Returns mapping of some element matching bound and filter constraints

Returns:
mapping of matching element
Throws:
java.util.NoSuchElementException - if empty