Class AbstractParallelIterable<T,B extends Batch<T>>
- java.lang.Object
-
- org.eclipse.collections.impl.lazy.parallel.AbstractParallelIterable<T,B>
-
- All Implemented Interfaces:
ParallelIterable<T>
- Direct Known Subclasses:
AbstractParallelIterableImpl,AbstractParallelListIterable,AbstractParallelSortedSetIterable,AbstractParallelUnsortedBag,AbstractParallelUnsortedSetIterable
public abstract class AbstractParallelIterable<T,B extends Batch<T>> extends java.lang.Object implements ParallelIterable<T>
-
-
Constructor Summary
Constructors Constructor Description AbstractParallelIterable()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description <K,V>
MapIterable<K,V>aggregateBy(Function<? super T,? extends K> groupBy, Function0<? extends V> zeroValueFactory, Function2<? super V,? super T,? extends V> nonMutatingAggregator)<K,V>
MapIterable<K,V>aggregateInPlaceBy(Function<? super T,? extends K> groupBy, Function0<? extends V> zeroValueFactory, Procedure2<? super V,? super T> mutatingAggregator)protected static <T> booleanallSatisfy(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Predicate<? super T> predicate)<P> booleanallSatisfyWith(Predicate2<? super T,? super P> predicate, P parameter)protected static <T> booleananySatisfy(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Predicate<? super T> predicate)<P> booleananySatisfyWith(Predicate2<? super T,? super P> predicate, P parameter)voidappendString(java.lang.Appendable appendable, java.lang.String start, java.lang.String separator, java.lang.String end)protected <S,V>
voidcollectCombine(Function<Batch<T>,V> function, Procedure2<S,V> combineProcedure, S state)private <S,V>
voidcollectCombineOrdered(Function<Batch<T>,V> function, Procedure2<S,V> combineProcedure, S state)private <S,V>
voidcollectCombineUnordered(Function<Batch<T>,V> function, Procedure2<S,V> combineProcedure, S state)private TcollectReduce(Function<Batch<T>,T> map, Function2<T,T,T> function2)private TcollectReduceOrdered(Function<Batch<T>,T> map, Function2<T,T,T> function2)private TcollectReduceUnordered(Function<Batch<T>,T> map, Function2<T,T,T> function2)intcount(Predicate<? super T> predicate)<P> intcountWith(Predicate2<? super T,? super P> predicate, P parameter)protected static <T> Tdetect(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Predicate<? super T> predicate)TdetectIfNone(Predicate<? super T> predicate, Function0<? extends T> function)<P> TdetectWith(Predicate2<? super T,? super P> predicate, P parameter)<P> TdetectWithIfNone(Predicate2<? super T,? super P> predicate, P parameter, Function0<? extends T> function)protected static <T> voidforEach(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Procedure<? super T> procedure)<P> voidforEachWith(Procedure2<? super T,? super P> procedure, P parameter)abstract intgetBatchSize()abstract java.util.concurrent.ExecutorServicegetExecutorService()<V> MapIterable<V,T>groupByUniqueKey(Function<? super T,? extends V> function)protected abstract booleanisOrdered()Tmax()Tmax(java.util.Comparator<? super T> comparator)<V extends java.lang.Comparable<? super V>>
TmaxBy(Function<? super T,? extends V> function)Tmin()Tmin(java.util.Comparator<? super T> comparator)<V extends java.lang.Comparable<? super V>>
TminBy(Function<? super T,? extends V> function)booleannoneSatisfy(Predicate<? super T> predicate)<P> booleannoneSatisfyWith(Predicate2<? super T,? super P> predicate, P parameter)abstract LazyIterable<B>split()doublesumOfDouble(DoubleFunction<? super T> function)Returns the final double result of evaluating function for each element of the iterable in parallel and adding the results together.private doublesumOfDoubleOrdered(Function<Batch<T>,DoubleSumResultHolder> map)doublesumOfFloat(FloatFunction<? super T> function)Returns the final double result of evaluating function for each element of the iterable in parallel and adding the results together.longsumOfInt(IntFunction<? super T> function)Returns the final long result of evaluating function for each element of the iterable in parallel and adding the results together.longsumOfLong(LongFunction<? super T> function)Returns the final long result of evaluating function for each element of the iterable in parallel and adding the results together.private longsumOfLongOrdered(LongFunction<Batch<T>> map)<E> E[]toArray(E[] array)MutableBag<T>toBag()MutableList<T>toList()<NK,NV>
MutableMap<NK,NV>toMap(Function<? super T,? extends NK> keyFunction, Function<? super T,? extends NV> valueFunction)MutableSet<T>toSet()MutableSortedBag<T>toSortedBag()MutableSortedBag<T>toSortedBag(java.util.Comparator<? super T> comparator)<V extends java.lang.Comparable<? super V>>
MutableSortedBag<T>toSortedBagBy(Function<? super T,? extends V> function)MutableList<T>toSortedList(java.util.Comparator<? super T> comparator)<V extends java.lang.Comparable<? super V>>
MutableList<T>toSortedListBy(Function<? super T,? extends V> function)<NK,NV>
MutableSortedMap<NK,NV>toSortedMap(java.util.Comparator<? super NK> comparator, Function<? super T,? extends NK> keyFunction, Function<? super T,? extends NV> valueFunction)<NK,NV>
MutableSortedMap<NK,NV>toSortedMap(Function<? super T,? extends NK> keyFunction, Function<? super T,? extends NV> valueFunction)MutableSortedSet<T>toSortedSet()MutableSortedSet<T>toSortedSet(java.util.Comparator<? super T> comparator)<V extends java.lang.Comparable<? super V>>
MutableSortedSet<T>toSortedSetBy(Function<? super T,? extends V> function)java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.collections.api.ParallelIterable
allSatisfy, anySatisfy, appendString, appendString, asUnique, collect, collectIf, collectWith, detect, flatCollect, forEach, groupBy, groupByEach, makeString, makeString, makeString, makeString, reject, rejectWith, select, selectInstancesOf, selectWith, toArray, toSortedList
-
-
-
-
Method Detail
-
forEach
protected static <T> void forEach(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Procedure<? super T> procedure)
-
anySatisfy
protected static <T> boolean anySatisfy(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Predicate<? super T> predicate)
-
allSatisfy
protected static <T> boolean allSatisfy(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Predicate<? super T> predicate)
-
detect
protected static <T> T detect(AbstractParallelIterable<T,? extends RootBatch<T>> parallelIterable, Predicate<? super T> predicate)
-
getExecutorService
public abstract java.util.concurrent.ExecutorService getExecutorService()
-
getBatchSize
public abstract int getBatchSize()
-
split
public abstract LazyIterable<B> split()
-
isOrdered
protected abstract boolean isOrdered()
-
collectCombine
protected <S,V> void collectCombine(Function<Batch<T>,V> function, Procedure2<S,V> combineProcedure, S state)
-
collectCombineOrdered
private <S,V> void collectCombineOrdered(Function<Batch<T>,V> function, Procedure2<S,V> combineProcedure, S state)
-
collectCombineUnordered
private <S,V> void collectCombineUnordered(Function<Batch<T>,V> function, Procedure2<S,V> combineProcedure, S state)
-
collectReduceOrdered
private T collectReduceOrdered(Function<Batch<T>,T> map, Function2<T,T,T> function2)
-
collectReduceUnordered
private T collectReduceUnordered(Function<Batch<T>,T> map, Function2<T,T,T> function2)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
appendString
public void appendString(java.lang.Appendable appendable, java.lang.String start, java.lang.String separator, java.lang.String end)- Specified by:
appendStringin interfaceParallelIterable<T>
-
forEachWith
public <P> void forEachWith(Procedure2<? super T,? super P> procedure, P parameter)
- Specified by:
forEachWithin interfaceParallelIterable<T>
-
anySatisfyWith
public <P> boolean anySatisfyWith(Predicate2<? super T,? super P> predicate, P parameter)
- Specified by:
anySatisfyWithin interfaceParallelIterable<T>
-
allSatisfyWith
public <P> boolean allSatisfyWith(Predicate2<? super T,? super P> predicate, P parameter)
- Specified by:
allSatisfyWithin interfaceParallelIterable<T>
-
noneSatisfy
public boolean noneSatisfy(Predicate<? super T> predicate)
- Specified by:
noneSatisfyin interfaceParallelIterable<T>
-
noneSatisfyWith
public <P> boolean noneSatisfyWith(Predicate2<? super T,? super P> predicate, P parameter)
- Specified by:
noneSatisfyWithin interfaceParallelIterable<T>
-
detectWith
public <P> T detectWith(Predicate2<? super T,? super P> predicate, P parameter)
- Specified by:
detectWithin interfaceParallelIterable<T>
-
detectIfNone
public T detectIfNone(Predicate<? super T> predicate, Function0<? extends T> function)
- Specified by:
detectIfNonein interfaceParallelIterable<T>
-
detectWithIfNone
public <P> T detectWithIfNone(Predicate2<? super T,? super P> predicate, P parameter, Function0<? extends T> function)
- Specified by:
detectWithIfNonein interfaceParallelIterable<T>
-
toArray
public <E> E[] toArray(E[] array)
- Specified by:
toArrayin interfaceParallelIterable<T>
-
toList
public MutableList<T> toList()
- Specified by:
toListin interfaceParallelIterable<T>
-
toSortedList
public MutableList<T> toSortedList(java.util.Comparator<? super T> comparator)
- Specified by:
toSortedListin interfaceParallelIterable<T>
-
toSortedListBy
public <V extends java.lang.Comparable<? super V>> MutableList<T> toSortedListBy(Function<? super T,? extends V> function)
- Specified by:
toSortedListByin interfaceParallelIterable<T>
-
toSet
public MutableSet<T> toSet()
- Specified by:
toSetin interfaceParallelIterable<T>
-
toSortedSet
public MutableSortedSet<T> toSortedSet()
- Specified by:
toSortedSetin interfaceParallelIterable<T>
-
toSortedSetBy
public <V extends java.lang.Comparable<? super V>> MutableSortedSet<T> toSortedSetBy(Function<? super T,? extends V> function)
- Specified by:
toSortedSetByin interfaceParallelIterable<T>
-
toBag
public MutableBag<T> toBag()
- Specified by:
toBagin interfaceParallelIterable<T>
-
toSortedBag
public MutableSortedBag<T> toSortedBag()
- Specified by:
toSortedBagin interfaceParallelIterable<T>
-
toSortedBag
public MutableSortedBag<T> toSortedBag(java.util.Comparator<? super T> comparator)
- Specified by:
toSortedBagin interfaceParallelIterable<T>
-
toSortedBagBy
public <V extends java.lang.Comparable<? super V>> MutableSortedBag<T> toSortedBagBy(Function<? super T,? extends V> function)
- Specified by:
toSortedBagByin interfaceParallelIterable<T>
-
toSortedSet
public MutableSortedSet<T> toSortedSet(java.util.Comparator<? super T> comparator)
- Specified by:
toSortedSetin interfaceParallelIterable<T>
-
toMap
public <NK,NV> MutableMap<NK,NV> toMap(Function<? super T,? extends NK> keyFunction, Function<? super T,? extends NV> valueFunction)
- Specified by:
toMapin interfaceParallelIterable<T>
-
toSortedMap
public <NK,NV> MutableSortedMap<NK,NV> toSortedMap(Function<? super T,? extends NK> keyFunction, Function<? super T,? extends NV> valueFunction)
- Specified by:
toSortedMapin interfaceParallelIterable<T>
-
toSortedMap
public <NK,NV> MutableSortedMap<NK,NV> toSortedMap(java.util.Comparator<? super NK> comparator, Function<? super T,? extends NK> keyFunction, Function<? super T,? extends NV> valueFunction)
- Specified by:
toSortedMapin interfaceParallelIterable<T>
-
aggregateBy
public <K,V> MapIterable<K,V> aggregateBy(Function<? super T,? extends K> groupBy, Function0<? extends V> zeroValueFactory, Function2<? super V,? super T,? extends V> nonMutatingAggregator)
- Specified by:
aggregateByin interfaceParallelIterable<T>
-
aggregateInPlaceBy
public <K,V> MapIterable<K,V> aggregateInPlaceBy(Function<? super T,? extends K> groupBy, Function0<? extends V> zeroValueFactory, Procedure2<? super V,? super T> mutatingAggregator)
- Specified by:
aggregateInPlaceByin interfaceParallelIterable<T>
-
count
public int count(Predicate<? super T> predicate)
- Specified by:
countin interfaceParallelIterable<T>
-
countWith
public <P> int countWith(Predicate2<? super T,? super P> predicate, P parameter)
- Specified by:
countWithin interfaceParallelIterable<T>
-
min
public T min(java.util.Comparator<? super T> comparator)
- Specified by:
minin interfaceParallelIterable<T>
-
max
public T max(java.util.Comparator<? super T> comparator)
- Specified by:
maxin interfaceParallelIterable<T>
-
min
public T min()
- Specified by:
minin interfaceParallelIterable<T>
-
max
public T max()
- Specified by:
maxin interfaceParallelIterable<T>
-
minBy
public <V extends java.lang.Comparable<? super V>> T minBy(Function<? super T,? extends V> function)
- Specified by:
minByin interfaceParallelIterable<T>
-
maxBy
public <V extends java.lang.Comparable<? super V>> T maxBy(Function<? super T,? extends V> function)
- Specified by:
maxByin interfaceParallelIterable<T>
-
sumOfInt
public long sumOfInt(IntFunction<? super T> function)
Description copied from interface:ParallelIterableReturns the final long result of evaluating function for each element of the iterable in parallel and adding the results together.- Specified by:
sumOfIntin interfaceParallelIterable<T>
-
sumOfFloat
public double sumOfFloat(FloatFunction<? super T> function)
Description copied from interface:ParallelIterableReturns the final double result of evaluating function for each element of the iterable in parallel and adding the results together. It uses Kahan summation algorithm to reduce numerical error.- Specified by:
sumOfFloatin interfaceParallelIterable<T>
-
sumOfLong
public long sumOfLong(LongFunction<? super T> function)
Description copied from interface:ParallelIterableReturns the final long result of evaluating function for each element of the iterable in parallel and adding the results together.- Specified by:
sumOfLongin interfaceParallelIterable<T>
-
sumOfDouble
public double sumOfDouble(DoubleFunction<? super T> function)
Description copied from interface:ParallelIterableReturns the final double result of evaluating function for each element of the iterable in parallel and adding the results together. It uses Kahan summation algorithm to reduce numerical error.- Specified by:
sumOfDoublein interfaceParallelIterable<T>
-
sumOfLongOrdered
private long sumOfLongOrdered(LongFunction<Batch<T>> map)
-
sumOfDoubleOrdered
private double sumOfDoubleOrdered(Function<Batch<T>,DoubleSumResultHolder> map)
-
groupByUniqueKey
public <V> MapIterable<V,T> groupByUniqueKey(Function<? super T,? extends V> function)
- Specified by:
groupByUniqueKeyin interfaceParallelIterable<T>
-
-