src/java.base/share/classes/java/util/ArrayPrefixHelpers.java
changeset 58520 e036ee8bae56
parent 57956 e0b8b019d2f5
child 58679 9c3209ff7550
equal deleted inserted replaced
58519:6e017b301287 58520:e036ee8bae56
   101 
   101 
   102     /** The smallest subtask array partition size to use as threshold */
   102     /** The smallest subtask array partition size to use as threshold */
   103     static final int MIN_PARTITION = 16;
   103     static final int MIN_PARTITION = 16;
   104 
   104 
   105     static final class CumulateTask<T> extends CountedCompleter<Void> {
   105     static final class CumulateTask<T> extends CountedCompleter<Void> {
       
   106         @SuppressWarnings("serial") // Not statically typed as Serializable
   106         final T[] array;
   107         final T[] array;
       
   108         @SuppressWarnings("serial") // Not statically typed as Serializable
   107         final BinaryOperator<T> function;
   109         final BinaryOperator<T> function;
   108         CumulateTask<T> left, right;
   110         CumulateTask<T> left, right;
   109         T in, out;
   111         @SuppressWarnings("serial") // Not statically typed as Serializable
       
   112         T in;
       
   113         @SuppressWarnings("serial") // Not statically typed as Serializable
       
   114         T out;
   110         final int lo, hi, origin, fence, threshold;
   115         final int lo, hi, origin, fence, threshold;
   111 
   116 
   112         /** Root task constructor */
   117         /** Root task constructor */
   113         public CumulateTask(CumulateTask<T> parent,
   118         public CumulateTask(CumulateTask<T> parent,
   114                             BinaryOperator<T> function,
   119                             BinaryOperator<T> function,
   255         private static final long serialVersionUID = 5293554502939613543L;
   260         private static final long serialVersionUID = 5293554502939613543L;
   256     }
   261     }
   257 
   262 
   258     static final class LongCumulateTask extends CountedCompleter<Void> {
   263     static final class LongCumulateTask extends CountedCompleter<Void> {
   259         final long[] array;
   264         final long[] array;
       
   265         @SuppressWarnings("serial") // Not statically typed as Serializable
   260         final LongBinaryOperator function;
   266         final LongBinaryOperator function;
   261         LongCumulateTask left, right;
   267         LongCumulateTask left, right;
   262         long in, out;
   268         long in, out;
   263         final int lo, hi, origin, fence, threshold;
   269         final int lo, hi, origin, fence, threshold;
   264 
   270 
   406         private static final long serialVersionUID = -5074099945909284273L;
   412         private static final long serialVersionUID = -5074099945909284273L;
   407     }
   413     }
   408 
   414 
   409     static final class DoubleCumulateTask extends CountedCompleter<Void> {
   415     static final class DoubleCumulateTask extends CountedCompleter<Void> {
   410         final double[] array;
   416         final double[] array;
       
   417         @SuppressWarnings("serial") // Not statically typed as Serializable
   411         final DoubleBinaryOperator function;
   418         final DoubleBinaryOperator function;
   412         DoubleCumulateTask left, right;
   419         DoubleCumulateTask left, right;
   413         double in, out;
   420         double in, out;
   414         final int lo, hi, origin, fence, threshold;
   421         final int lo, hi, origin, fence, threshold;
   415 
   422 
   557         private static final long serialVersionUID = -586947823794232033L;
   564         private static final long serialVersionUID = -586947823794232033L;
   558     }
   565     }
   559 
   566 
   560     static final class IntCumulateTask extends CountedCompleter<Void> {
   567     static final class IntCumulateTask extends CountedCompleter<Void> {
   561         final int[] array;
   568         final int[] array;
       
   569         @SuppressWarnings("serial") // Not statically typed as Serializable
   562         final IntBinaryOperator function;
   570         final IntBinaryOperator function;
   563         IntCumulateTask left, right;
   571         IntCumulateTask left, right;
   564         int in, out;
   572         int in, out;
   565         final int lo, hi, origin, fence, threshold;
   573         final int lo, hi, origin, fence, threshold;
   566 
   574