Abstract class serving as the basis of parallel array classes across types.
| Constructor and description | 
|---|
| AbstractParallelAnyArray
                                (java.util.concurrent.ForkJoinPool ex, int origin, int fence) | 
| Type | Name and description | 
|---|---|
| double[] | allDoubles() | 
| long[] | allLongs() | 
| java.lang.Object[] | allObjects(java.lang.Class elementType)Shared support for select/map all -- probe filter, map, and type to start selection driver, or do parallel mapping, or just copy. | 
| int | anyIndex()Returns the index of some element matching bound and filter constraints, or -1 if none. | 
| void | boundsCheck(int lo, int hi) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(IntAndObjectToObject<? super T, ? extends U> fst, IntAndObjectToObject<? super U, ? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(IntAndObjectToObject<? super T, ? extends U> fst, IntAndObjectToDouble<? super U> snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(IntAndObjectToObject<? super T, ? extends U> fst, IntAndObjectToLong<? super U> snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(IntAndDoubleToObject<? extends U> fst, IntAndObjectToObject<? super U, ? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(IntAndDoubleToObject<? extends U> fst, IntAndObjectToDouble<? super U> snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(IntAndDoubleToObject<? extends U> fst, IntAndObjectToLong<? super U> snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(IntAndLongToObject<? extends U> fst, IntAndObjectToObject<? super U, ? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(IntAndLongToObject<? extends U> fst, IntAndObjectToDouble<? super U> snd) | 
| static IntAndLongToLong | compoundIndexedOp(IntAndLongToObject<? extends U> fst, IntAndObjectToLong<? super U> snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(IntAndObjectToDouble<? super T> fst, IntAndDoubleToObject<? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(IntAndObjectToDouble<? super T> fst, IntAndDoubleToDouble snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(IntAndObjectToLong<? super T> fst, IntAndLongToLong snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(IntAndDoubleToLong fst, IntAndLongToObject<? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(IntAndDoubleToDouble fst, IntAndDoubleToDouble snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(IntAndDoubleToDouble fst, IntAndDoubleToLong snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(IntAndLongToDouble fst, IntAndDoubleToObject<? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(IntAndLongToDouble fst, IntAndDoubleToDouble snd) | 
| static IntAndLongToLong | compoundIndexedOp(IntAndLongToDouble fst, IntAndDoubleToLong snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(IntAndObjectToLong<? super T> fst, IntAndLongToObject<? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(IntAndObjectToLong<? super T> fst, IntAndLongToDouble snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(IntAndObjectToDouble<? super T> fst, IntAndDoubleToLong snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(IntAndDoubleToDouble fst, IntAndDoubleToObject<? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(IntAndDoubleToLong fst, IntAndLongToDouble snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(IntAndDoubleToLong fst, IntAndLongToLong snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(IntAndLongToLong fst, IntAndLongToObject<? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(IntAndLongToLong fst, IntAndLongToDouble snd) | 
| static IntAndLongToLong | compoundIndexedOp(IntAndLongToLong fst, IntAndLongToLong snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(IntAndObjectToObject<? super T, ? extends U> fst, Op<? super U, ? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(IntAndObjectToObject<? super T, ? extends U> fst, ObjectToDouble<? super U> snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(IntAndObjectToObject<? super T, ? extends U> fst, ObjectToLong<? super U> snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(IntAndDoubleToObject<? extends U> fst, Op<? super U, ? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(IntAndDoubleToObject<? extends U> fst, ObjectToDouble<? super U> snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(IntAndDoubleToObject<? extends U> fst, ObjectToLong<? super U> snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(IntAndLongToObject<? extends U> fst, Op<? super U, ? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(IntAndLongToObject<? extends U> fst, ObjectToDouble<? super U> snd) | 
| static IntAndLongToLong | compoundIndexedOp(IntAndLongToObject<? extends U> fst, ObjectToLong<? super U> snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(IntAndObjectToDouble<? super T> fst, DoubleToObject<? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(IntAndObjectToDouble<? super T> fst, DoubleOp snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(IntAndObjectToDouble<? super T> fst, DoubleToLong snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(IntAndDoubleToDouble fst, DoubleToObject<? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(IntAndDoubleToDouble fst, DoubleOp snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(IntAndDoubleToDouble fst, DoubleToLong snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(IntAndLongToDouble fst, DoubleToObject<? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(IntAndLongToDouble fst, DoubleOp snd) | 
| static IntAndLongToLong | compoundIndexedOp(IntAndLongToDouble fst, DoubleToLong snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(IntAndObjectToLong<? super T> fst, LongToObject<? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(IntAndObjectToLong<? super T> fst, LongToDouble snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(IntAndObjectToLong<? super T> fst, LongOp snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(IntAndDoubleToLong fst, LongToObject<? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(IntAndDoubleToLong fst, LongToDouble snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(IntAndDoubleToLong fst, LongOp snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(IntAndLongToLong fst, LongToObject<? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(IntAndLongToLong fst, LongToDouble snd) | 
| static IntAndLongToLong | compoundIndexedOp(IntAndLongToLong fst, LongOp snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(Op<? super T, ? extends U> fst, IntAndObjectToObject<? super U, ? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(Op<? super T, ? extends U> fst, IntAndObjectToDouble<? super U> snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(Op<? super T, ? extends U> fst, IntAndObjectToLong<? super U> snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(DoubleToObject<? extends U> fst, IntAndObjectToObject<? super U, ? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(DoubleToObject<? extends U> fst, IntAndObjectToDouble<? super U> snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(DoubleToObject<? extends U> fst, IntAndObjectToLong<? super U> snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(LongToObject<? extends U> fst, IntAndObjectToObject<? super U, ? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(LongToObject<? extends U> fst, IntAndObjectToDouble<? super U> snd) | 
| static IntAndLongToLong | compoundIndexedOp(LongToObject<? extends U> fst, IntAndObjectToLong<? super U> snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(ObjectToDouble<? super T> fst, IntAndDoubleToObject<? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(ObjectToDouble<? super T> fst, IntAndDoubleToDouble snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(ObjectToDouble<? super T> fst, IntAndDoubleToLong snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(DoubleOp fst, IntAndDoubleToObject<? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(DoubleOp fst, IntAndDoubleToDouble snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(DoubleOp fst, IntAndDoubleToLong snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(LongToDouble fst, IntAndDoubleToObject<? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(LongToDouble fst, IntAndDoubleToDouble snd) | 
| static IntAndLongToLong | compoundIndexedOp(LongToDouble fst, IntAndDoubleToLong snd) | 
| static IntAndObjectToObject<T, V> | compoundIndexedOp(ObjectToLong<? super T> fst, IntAndLongToObject<? extends V> snd) | 
| static IntAndObjectToDouble<T> | compoundIndexedOp(ObjectToLong<? super T> fst, IntAndLongToDouble snd) | 
| static IntAndObjectToLong<T> | compoundIndexedOp(ObjectToLong<? super T> fst, IntAndLongToLong snd) | 
| static IntAndDoubleToObject<V> | compoundIndexedOp(DoubleToLong fst, IntAndLongToObject<? extends V> snd) | 
| static IntAndDoubleToDouble | compoundIndexedOp(DoubleToLong fst, IntAndLongToDouble snd) | 
| static IntAndDoubleToLong | compoundIndexedOp(DoubleToLong fst, IntAndLongToLong snd) | 
| static IntAndLongToObject<V> | compoundIndexedOp(LongOp fst, IntAndLongToObject<? extends V> snd) | 
| static IntAndLongToDouble | compoundIndexedOp(LongOp fst, IntAndLongToDouble snd) | 
| static IntAndLongToLong | compoundIndexedOp(LongOp fst, IntAndLongToLong snd) | 
| static IntAndObjectPredicate<T> | compoundIndexedSelector(Predicate<S> fst, IntAndObjectPredicate<? super T> snd) | 
| static IntAndObjectPredicate<T> | compoundIndexedSelector(IntAndObjectPredicate<S> fst, IntAndObjectPredicate<? super T> snd) | 
| static IntAndObjectPredicate<T> | compoundIndexedSelector(IntAndObjectPredicate<S> fst, Predicate<? super T> snd) | 
| static IntAndDoublePredicate | compoundIndexedSelector(DoublePredicate fst, IntAndDoublePredicate snd) | 
| static IntAndDoublePredicate | compoundIndexedSelector(IntAndDoublePredicate fst, IntAndDoublePredicate snd) | 
| static IntAndDoublePredicate | compoundIndexedSelector(IntAndDoublePredicate fst, DoublePredicate snd) | 
| static IntAndLongPredicate | compoundIndexedSelector(LongPredicate fst, IntAndLongPredicate snd) | 
| static IntAndLongPredicate | compoundIndexedSelector(IntAndLongPredicate fst, IntAndLongPredicate snd) | 
| static IntAndLongPredicate | compoundIndexedSelector(IntAndLongPredicate fst, LongPredicate snd) | 
| int | computeThreshold()Returns size threshold for splitting into subtask. | 
| double | dget(int index) | 
| double[] | dgetArray() | 
| int | getThreshold()Returns lazily computed threshold. | 
| boolean | hasFilter() | 
| boolean | hasMap() | 
| static IntAndObjectToObject<T, V> | indexedMapper(BinaryOp<? super T, ? super U, ? extends V> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndObjectToDouble<T> | indexedMapper(ObjectAndObjectToDouble<? super T, ? super U> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndObjectToLong<T> | indexedMapper(ObjectAndObjectToLong<? super T, ? super U> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndObjectToObject<T, V> | indexedMapper(ObjectAndDoubleToObject<? super T, ? extends V> combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndObjectToDouble<T> | indexedMapper(ObjectAndDoubleToDouble<? super T> combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndObjectToLong<T> | indexedMapper(ObjectAndDoubleToLong<? super T> combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndObjectToObject<T, V> | indexedMapper(ObjectAndLongToObject<? super T, ? extends V> combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndObjectToDouble<T> | indexedMapper(ObjectAndLongToDouble<? super T> combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndObjectToLong<T> | indexedMapper(ObjectAndLongToLong<? super T> combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndDoubleToObject<V> | indexedMapper(DoubleAndObjectToObject<? super U, ? extends V> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndDoubleToDouble | indexedMapper(DoubleAndObjectToDouble<? super U> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndDoubleToLong | indexedMapper(DoubleAndObjectToLong<? super U> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndDoubleToObject<V> | indexedMapper(DoubleAndDoubleToObject<? extends V> combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndDoubleToDouble | indexedMapper(BinaryDoubleOp combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndDoubleToLong | indexedMapper(DoubleAndDoubleToLong combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndDoubleToObject<V> | indexedMapper(DoubleAndLongToObject<? extends V> combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndDoubleToDouble | indexedMapper(DoubleAndLongToDouble combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndDoubleToLong | indexedMapper(DoubleAndLongToLong combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndLongToObject<V> | indexedMapper(LongAndObjectToObject<? super U, ? extends V> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndLongToDouble | indexedMapper(LongAndObjectToDouble<? super U> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndLongToLong | indexedMapper(LongAndObjectToLong<? super U> combiner, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndLongToObject<V> | indexedMapper(LongAndDoubleToObject<? extends V> combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndLongToDouble | indexedMapper(LongAndDoubleToDouble combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndLongToLong | indexedMapper(LongAndDoubleToLong combiner, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndLongToObject<V> | indexedMapper(LongAndLongToObject<? extends V> combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndLongToDouble | indexedMapper(LongAndLongToDouble combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndLongToLong | indexedMapper(BinaryLongOp combiner, ParallelLongArrayWithLongMapping u, int origin) | 
| static IntAndObjectPredicate<T> | indexedSelector(BinaryPredicate<? super T, ? super U> bp, ParallelArrayWithMapping<W, U> u, int origin) | 
| static IntAndDoublePredicate | indexedSelector(BinaryDoublePredicate bp, ParallelDoubleArrayWithDoubleMapping u, int origin) | 
| static IntAndLongPredicate | indexedSelector(BinaryLongPredicate bp, ParallelLongArrayWithLongMapping u, int origin) | 
| boolean | isEmpty()Returns true if there are no elements. | 
| boolean | isSelected(int index) | 
| void | leafApply(int lo, int hi, Procedure procedure) | 
| void | leafApply(int lo, int hi, DoubleProcedure procedure) | 
| void | leafApply(int lo, int hi, LongProcedure procedure) | 
| void | leafBinaryIndexMap(int l, int h, IntAndObjectToObject op) | 
| void | leafBinaryIndexMap(int l, int h, IntAndDoubleToDouble op) | 
| void | leafBinaryIndexMap(int l, int h, IntAndLongToLong op) | 
| void | leafCombineInPlace(int lo, int hi, java.lang.Object[] other, int otherOffset, BinaryOp combiner) | 
| void | leafCombineInPlace(int lo, int hi, ParallelArrayWithMapping other, int otherOffset, BinaryOp combiner) | 
| void | leafCombineInPlace(int lo, int hi, double[] other, int otherOffset, BinaryDoubleOp combiner) | 
| void | leafCombineInPlace(int lo, int hi, ParallelDoubleArrayWithDoubleMapping other, int otherOffset, BinaryDoubleOp combiner) | 
| void | leafCombineInPlace(int lo, int hi, long[] other, int otherOffset, BinaryLongOp combiner) | 
| void | leafCombineInPlace(int lo, int hi, ParallelLongArrayWithLongMapping other, int otherOffset, BinaryLongOp combiner) | 
| void | leafFill(int l, int h, java.lang.Object value) | 
| void | leafFill(int l, int h, double value) | 
| void | leafFill(int l, int h, long value) | 
| void | leafGenerate(int l, int h, Generator generator) | 
| void | leafGenerate(int l, int h, DoubleGenerator generator) | 
| void | leafGenerate(int l, int h, LongGenerator generator) | 
| void | leafIndexMap(int l, int h, IntToObject op) | 
| void | leafIndexMap(int l, int h, IntToDouble array) | 
| void | leafIndexMap(int l, int h, IntToLong array) | 
| int | leafIndexSelected(int lo, int hi, boolean positive, int[] indices) | 
| void | leafMoveByIndex(int[] indices, int loIdx, int hiIdx, int offset) | 
| int | leafMoveSelected(int lo, int hi, int offset, boolean positive) | 
| java.lang.Object | leafReduce(int lo, int hi, Reducer reducer, java.lang.Object base) | 
| double | leafReduce(int lo, int hi, DoubleReducer reducer, double base) | 
| long | leafReduce(int lo, int hi, LongReducer reducer, long base) | 
| void | leafTransfer(int lo, int hi, java.lang.Object[] dest, int offset) | 
| void | leafTransfer(int lo, int hi, double[] dest, int offset) | 
| void | leafTransfer(int lo, int hi, long[] dest, int offset) | 
| void | leafTransferByIndex(int[] indices, int loIdx, int hiIdx, java.lang.Object[] dest, int offset) | 
| void | leafTransferByIndex(int[] indices, int loIdx, int hiIdx, double[] dest, int offset) | 
| void | leafTransferByIndex(int[] indices, int loIdx, int hiIdx, long[] dest, int offset) | 
| void | leafTransform(int l, int h, Op op) | 
| void | leafTransform(int l, int h, DoubleOp op) | 
| void | leafTransform(int l, int h, LongOp op) | 
| long | lget(int index) | 
| long[] | lgetArray() | 
| java.lang.Object | oget(int index) | 
| java.lang.Object[] | ogetArray()Access methods for ref, double, long. | 
| int | size()Returns the number of elements selected using bound or filter restrictions. | 
| Methods inherited from class | Name | 
|---|---|
| class java.lang.Object | java.lang.Object#wait(), java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() | 
Shared support for select/map all -- probe filter, map, and type to start selection driver, or do parallel mapping, or just copy.
Returns the index of some element matching bound and filter constraints, or -1 if none.
Returns size threshold for splitting into subtask. By default, uses about 8 times as many tasks as threads
Returns lazily computed threshold.
Returns true if there are no elements.
Access methods for ref, double, long. Checking for null/false return is used as a sort of type test. These are used to avoid duplication in non-performance-critical aspects of control, as well as to provide a simple default mechanism for extensions.
Returns the number of elements selected using bound or filter restrictions. Note that this method must evaluate all selectors to return its result.
Copyright © 2008–2014 Václav Pech. All Rights Reserved.