ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/extra166y/CommonOps.java
(Generate patch)

Comparing jsr166/src/extra166y/CommonOps.java (file contents):
Revision 1.6 by jsr166, Wed Jan 16 00:51:11 2013 UTC vs.
Revision 1.7 by jsr166, Tue Feb 5 17:46:29 2013 UTC

# Line 17 | Line 17 | public class CommonOps {
17      private CommonOps() {} // disable construction
18  
19      /**
20 <     * Returns a Comparator for Comparable objects
20 >     * Returns a Comparator for Comparable objects.
21       */
22      public static <T extends Comparable<? super T>> Comparator<T>
23                               naturalComparator(Class<T> type) {
# Line 136 | Line 136 | public class CommonOps {
136  
137  
138      /**
139 <     * Returns a comparator for doubles relying on natural ordering
139 >     * Returns a comparator for doubles relying on natural ordering.
140       */
141      public static DoubleComparator naturalDoubleComparator() {
142          return NaturalDoubleComparator.comparator;
# Line 152 | Line 152 | public class CommonOps {
152  
153      /**
154       * Returns a reducer returning the maximum of two double elements,
155 <     * using natural comparator
155 >     * using natural comparator.
156       */
157      public static DoubleReducer naturalDoubleMaxReducer() {
158          return NaturalDoubleMaxReducer.max;
# Line 167 | Line 167 | public class CommonOps {
167  
168      /**
169       * Returns a reducer returning the minimum of two double elements,
170 <     * using natural comparator
170 >     * using natural comparator.
171       */
172      public static DoubleReducer naturalDoubleMinReducer() {
173          return NaturalDoubleMinReducer.min;
# Line 181 | Line 181 | public class CommonOps {
181  
182      /**
183       * Returns a reducer returning the maximum of two double elements,
184 <     * using the given comparator
184 >     * using the given comparator.
185       */
186      public static DoubleReducer doubleMaxReducer
187          (final DoubleComparator comparator) {
# Line 194 | Line 194 | public class CommonOps {
194  
195      /**
196       * Returns a reducer returning the minimum of two double elements,
197 <     * using the given comparator
197 >     * using the given comparator.
198       */
199      public static DoubleReducer doubleMinReducer
200          (final DoubleComparator comparator) {
# Line 206 | Line 206 | public class CommonOps {
206      }
207  
208      /**
209 <     * Returns a comparator for longs relying on natural ordering
209 >     * Returns a comparator for longs relying on natural ordering.
210       */
211      public static LongComparator naturalLongComparator() {
212          return NaturalLongComparator.comparator;
# Line 222 | Line 222 | public class CommonOps {
222  
223      /**
224       * Returns a reducer returning the maximum of two long elements,
225 <     * using natural comparator
225 >     * using natural comparator.
226       */
227      public static LongReducer naturalLongMaxReducer() {
228          return NaturalLongMaxReducer.max;
# Line 237 | Line 237 | public class CommonOps {
237  
238      /**
239       * A reducer returning the minimum of two long elements,
240 <     * using natural comparator
240 >     * using natural comparator.
241       */
242      public static LongReducer naturalLongMinReducer() {
243          return NaturalLongMinReducer.min;
# Line 251 | Line 251 | public class CommonOps {
251  
252      /**
253       * Returns a reducer returning the maximum of two long elements,
254 <     * using the given comparator
254 >     * using the given comparator.
255       */
256      public static LongReducer longMaxReducer
257          (final LongComparator comparator) {
# Line 264 | Line 264 | public class CommonOps {
264  
265      /**
266       * Returns a reducer returning the minimum of two long elements,
267 <     * using the given comparator
267 >     * using the given comparator.
268       */
269      public static LongReducer longMinReducer
270          (final LongComparator comparator) {
# Line 277 | Line 277 | public class CommonOps {
277  
278      /**
279       * Returns a composite mapper that applies a second mapper to the results
280 <     * of applying the first one
280 >     * of applying the first one.
281       */
282      public static <T,U,V> Op<T,V> compoundOp
283          (final Op<? super T, ? extends U> first,
# Line 289 | Line 289 | public class CommonOps {
289  
290      /**
291       * Returns a composite mapper that applies a second mapper to the results
292 <     * of applying the first one
292 >     * of applying the first one.
293       */
294      public static <T,V> Op<T,V> compoundOp
295          (final ObjectToDouble<? super T> first,
# Line 301 | Line 301 | public class CommonOps {
301  
302      /**
303       * Returns a composite mapper that applies a second mapper to the results
304 <     * of applying the first one
304 >     * of applying the first one.
305       */
306      public static <T,V> Op<T,V> compoundOp
307          (final ObjectToLong<? super T> first,
# Line 313 | Line 313 | public class CommonOps {
313  
314      /**
315       * Returns a composite mapper that applies a second mapper to the results
316 <     * of applying the first one
316 >     * of applying the first one.
317       */
318      public static <T,V> DoubleToObject<V> compoundOp
319          (final DoubleToObject<? extends T> first,
# Line 325 | Line 325 | public class CommonOps {
325  
326      /**
327       * Returns a composite mapper that applies a second mapper to the results
328 <     * of applying the first one
328 >     * of applying the first one.
329       */
330      public static <T,V> LongToObject<V> compoundOp
331          (final LongToObject<? extends T> first,
# Line 337 | Line 337 | public class CommonOps {
337  
338      /**
339       * Returns a composite mapper that applies a second mapper to the results
340 <     * of applying the first one
340 >     * of applying the first one.
341       */
342      public static <T,U> ObjectToDouble<T> compoundOp
343          (final Op<? super T, ? extends U> first,
# Line 349 | Line 349 | public class CommonOps {
349  
350      /**
351       * Returns a composite mapper that applies a second mapper to the results
352 <     * of applying the first one
352 >     * of applying the first one.
353       */
354      public static <T,U> ObjectToLong<T> compoundOp
355          (final Op<? super T, ? extends U> first,
# Line 361 | Line 361 | public class CommonOps {
361  
362      /**
363       * Returns a composite mapper that applies a second mapper to the results
364 <     * of applying the first one
364 >     * of applying the first one.
365       */
366      public static <T> ObjectToDouble<T> compoundOp
367          (final ObjectToDouble<? super T> first,
# Line 373 | Line 373 | public class CommonOps {
373  
374      /**
375       * Returns a composite mapper that applies a second mapper to the results
376 <     * of applying the first one
376 >     * of applying the first one.
377       */
378      public static <T> ObjectToLong<T> compoundOp
379          (final ObjectToDouble<? super T> first,
# Line 385 | Line 385 | public class CommonOps {
385  
386      /**
387       * Returns a composite mapper that applies a second mapper to the results
388 <     * of applying the first one
388 >     * of applying the first one.
389       */
390      public static <T> ObjectToLong<T> compoundOp
391          (final ObjectToLong<? super T> first,
# Line 397 | Line 397 | public class CommonOps {
397  
398      /**
399       * Returns a composite mapper that applies a second mapper to the results
400 <     * of applying the first one
400 >     * of applying the first one.
401       */
402      public static <T> ObjectToDouble<T> compoundOp
403          (final ObjectToLong<? super T> first,
# Line 409 | Line 409 | public class CommonOps {
409  
410      /**
411       * Returns a composite mapper that applies a second mapper to the results
412 <     * of applying the first one
412 >     * of applying the first one.
413       */
414      public static DoubleOp compoundOp
415          (final DoubleOp first,
# Line 421 | Line 421 | public class CommonOps {
421  
422      /**
423       * Returns a composite mapper that applies a second mapper to the results
424 <     * of applying the first one
424 >     * of applying the first one.
425       */
426      public static DoubleToLong compoundOp
427          (final DoubleOp first,
# Line 433 | Line 433 | public class CommonOps {
433  
434      /**
435       * Returns a composite mapper that applies a second mapper to the results
436 <     * of applying the first one
436 >     * of applying the first one.
437       */
438      public static DoubleToLong compoundOp
439          (final DoubleToLong first,
# Line 445 | Line 445 | public class CommonOps {
445  
446      /**
447       * Returns a composite mapper that applies a second mapper to the results
448 <     * of applying the first one
448 >     * of applying the first one.
449       */
450      public static <T> DoubleToObject<T> compoundOp
451          (final DoubleToLong first,
# Line 457 | Line 457 | public class CommonOps {
457  
458      /**
459       * Returns a composite mapper that applies a second mapper to the results
460 <     * of applying the first one
460 >     * of applying the first one.
461       */
462      public static <T> LongToObject<T> compoundOp
463          (final LongToDouble first,
# Line 469 | Line 469 | public class CommonOps {
469  
470      /**
471       * Returns a composite mapper that applies a second mapper to the results
472 <     * of applying the first one
472 >     * of applying the first one.
473       */
474      public static LongToDouble compoundOp
475          (final LongOp first,
# Line 481 | Line 481 | public class CommonOps {
481  
482      /**
483       * Returns a composite mapper that applies a second mapper to the results
484 <     * of applying the first one
484 >     * of applying the first one.
485       */
486      public static LongToDouble compoundOp
487          (final LongToDouble first,
# Line 493 | Line 493 | public class CommonOps {
493  
494      /**
495       * Returns a composite mapper that applies a second mapper to the results
496 <     * of applying the first one
496 >     * of applying the first one.
497       */
498      public static <T> DoubleToObject<T> compoundOp
499          (final DoubleOp first,
# Line 505 | Line 505 | public class CommonOps {
505  
506      /**
507       * Returns a composite mapper that applies a second mapper to the results
508 <     * of applying the first one
508 >     * of applying the first one.
509       */
510      public static <T> LongToObject<T> compoundOp
511          (final LongOp first,
# Line 517 | Line 517 | public class CommonOps {
517  
518      /**
519       * Returns a composite mapper that applies a second mapper to the results
520 <     * of applying the first one
520 >     * of applying the first one.
521       */
522      public static <T> DoubleOp compoundOp
523          (final DoubleToObject<? extends T> first,
# Line 529 | Line 529 | public class CommonOps {
529  
530      /**
531       * Returns a composite mapper that applies a second mapper to the results
532 <     * of applying the first one
532 >     * of applying the first one.
533       */
534      public static <T> LongToDouble compoundOp
535          (final LongToObject<? extends T> first,
# Line 541 | Line 541 | public class CommonOps {
541  
542      /**
543       * Returns a composite mapper that applies a second mapper to the results
544 <     * of applying the first one
544 >     * of applying the first one.
545       */
546      public static <T> DoubleToLong compoundOp
547          (final DoubleToObject<? extends T> first,
# Line 553 | Line 553 | public class CommonOps {
553  
554      /**
555       * Returns a composite mapper that applies a second mapper to the results
556 <     * of applying the first one
556 >     * of applying the first one.
557       */
558      public static <T> LongOp compoundOp
559          (final LongToObject<? extends T> first,
# Line 565 | Line 565 | public class CommonOps {
565  
566      /**
567       * Returns a composite mapper that applies a second mapper to the results
568 <     * of applying the first one
568 >     * of applying the first one.
569       */
570      public static LongOp compoundOp
571          (final LongOp first,
# Line 577 | Line 577 | public class CommonOps {
577  
578      /**
579       * Returns a composite mapper that applies a second mapper to the results
580 <     * of applying the first one
580 >     * of applying the first one.
581       */
582      public static DoubleOp compoundOp
583          (final DoubleToLong first,
# Line 589 | Line 589 | public class CommonOps {
589  
590      /**
591       * Returns a composite mapper that applies a second mapper to the results
592 <     * of applying the first one
592 >     * of applying the first one.
593       */
594      public static LongOp compoundOp
595          (final LongToDouble first,
# Line 600 | Line 600 | public class CommonOps {
600      }
601  
602      /**
603 <     * Returns a predicate evaluating to the negation of its contained predicate
603 >     * Returns a predicate evaluating to the negation of its contained predicate.
604       */
605      public static <T> Predicate<T> notPredicate
606          (final Predicate<T> pred) {
# Line 610 | Line 610 | public class CommonOps {
610      }
611  
612      /**
613 <     * Returns a predicate evaluating to the negation of its contained predicate
613 >     * Returns a predicate evaluating to the negation of its contained predicate.
614       */
615      public static DoublePredicate notPredicate
616          (final DoublePredicate pred) {
# Line 620 | Line 620 | public class CommonOps {
620      }
621  
622      /**
623 <     * Returns a predicate evaluating to the negation of its contained predicate
623 >     * Returns a predicate evaluating to the negation of its contained predicate.
624       */
625      public static LongPredicate notPredicate
626          (final LongPredicate pred) {
# Line 630 | Line 630 | public class CommonOps {
630      }
631  
632      /**
633 <     * Returns a predicate evaluating to the conjunction of its contained predicates
633 >     * Returns a predicate evaluating to the conjunction of its contained predicates.
634       */
635      public static <S, T extends S> Predicate<T> andPredicate
636                                  (final Predicate<S> first,
# Line 643 | Line 643 | public class CommonOps {
643      }
644  
645      /**
646 <     * Returns a predicate evaluating to the disjunction of its contained predicates
646 >     * Returns a predicate evaluating to the disjunction of its contained predicates.
647       */
648      public static <S, T extends S> Predicate<T> orPredicate
649                                  (final Predicate<S> first,
# Line 656 | Line 656 | public class CommonOps {
656      }
657  
658      /**
659 <     * Returns a predicate evaluating to the conjunction of its contained predicates
659 >     * Returns a predicate evaluating to the conjunction of its contained predicates.
660       */
661      public static DoublePredicate andPredicate
662          (final DoublePredicate first,
# Line 669 | Line 669 | public class CommonOps {
669      }
670  
671      /**
672 <     * Returns a predicate evaluating to the disjunction of its contained predicates
672 >     * Returns a predicate evaluating to the disjunction of its contained predicates.
673       */
674      public static DoublePredicate orPredicate
675          (final DoublePredicate first,
# Line 683 | Line 683 | public class CommonOps {
683  
684  
685      /**
686 <     * Returns a predicate evaluating to the conjunction of its contained predicates
686 >     * Returns a predicate evaluating to the conjunction of its contained predicates.
687       */
688      public static LongPredicate andPredicate
689          (final LongPredicate first,
# Line 696 | Line 696 | public class CommonOps {
696      }
697  
698      /**
699 <     * Returns a predicate evaluating to the disjunction of its contained predicates
699 >     * Returns a predicate evaluating to the disjunction of its contained predicates.
700       */
701      public static LongPredicate orPredicate
702          (final LongPredicate first,
# Line 709 | Line 709 | public class CommonOps {
709      }
710  
711      /**
712 <     * Returns a predicate evaluating to true if its argument is non-null
712 >     * Returns a predicate evaluating to true if its argument is non-null.
713       */
714      public static Predicate<Object> isNonNullPredicate() {
715          return IsNonNullPredicate.predicate;
# Line 723 | Line 723 | public class CommonOps {
723      }
724  
725      /**
726 <     * Returns a predicate evaluating to true if its argument is null
726 >     * Returns a predicate evaluating to true if its argument is null.
727       */
728      public static Predicate<Object> isNullPredicate() {
729          return IsNullPredicate.predicate;
# Line 761 | Line 761 | public class CommonOps {
761      }
762  
763      /**
764 <     * Returns a reducer that adds two double elements
764 >     * Returns a reducer that adds two double elements.
765       */
766      public static DoubleReducer doubleAdder() { return DoubleAdder.adder; }
767      static final class DoubleAdder implements DoubleReducer {
# Line 770 | Line 770 | public class CommonOps {
770      }
771  
772      /**
773 <     * Returns a reducer that adds two long elements
773 >     * Returns a reducer that adds two long elements.
774       */
775      public static LongReducer longAdder() { return LongAdder.adder; }
776      static final class LongAdder implements LongReducer {
# Line 779 | Line 779 | public class CommonOps {
779      }
780  
781      /**
782 <     * Returns a reducer that adds two int elements
782 >     * Returns a reducer that adds two int elements.
783       */
784      public static IntReducer intAdder() { return IntAdder.adder; }
785      static final class IntAdder implements IntReducer {
# Line 790 | Line 790 | public class CommonOps {
790      /**
791       * Returns a generator producing uniform random values between
792       * zero and one, with the same properties as {@link
793 <     * java.util.Random#nextDouble}
793 >     * java.util.Random#nextDouble}.
794       */
795      public static DoubleGenerator doubleRandom() {
796          return DoubleRandomGenerator.generator;
# Line 822 | Line 822 | public class CommonOps {
822  
823      /**
824       * Returns a generator producing uniform random values between the
825 <     * given least value (inclusive) and bound (exclusive)
825 >     * given least value (inclusive) and bound (exclusive).
826       * @param least the least value returned
827       * @param bound the upper bound (exclusive) of opd values
828       */
# Line 842 | Line 842 | public class CommonOps {
842  
843      /**
844       * Returns a generator producing uniform random values with the
845 <     * same properties as {@link java.util.Random#nextLong}
845 >     * same properties as {@link java.util.Random#nextLong}.
846       */
847      public static LongGenerator longRandom() {
848          return LongRandomGenerator.generator;
# Line 857 | Line 857 | public class CommonOps {
857  
858      /**
859       * Returns a generator producing uniform random values with the
860 <     * same properties as {@link java.util.Random#nextInt(int)}
860 >     * same properties as {@link java.util.Random#nextInt(int)}.
861       * @param bound the upper bound (exclusive) of opd values
862       */
863      public static LongGenerator longRandom(long bound) {
# Line 897 | Line 897 | public class CommonOps {
897  
898      /**
899       * Returns a generator producing uniform random values with the
900 <     * same properties as {@link java.util.Random#nextInt}
900 >     * same properties as {@link java.util.Random#nextInt}.
901       */
902      public static IntGenerator intRandom() {
903          return IntRandomGenerator.generator;
# Line 912 | Line 912 | public class CommonOps {
912  
913      /**
914       * Returns a generator producing uniform random values with the
915 <     * same properties as {@link java.util.Random#nextInt(int)}
915 >     * same properties as {@link java.util.Random#nextInt(int)}.
916       * @param bound the upper bound (exclusive) of opd values
917       */
918      public static IntGenerator intRandom(int bound) {
# Line 930 | Line 930 | public class CommonOps {
930  
931      /**
932       * Returns a generator producing uniform random values between the
933 <     * given least value (inclusive) and bound (exclusive)
933 >     * given least value (inclusive) and bound (exclusive).
934       * @param least the least value returned
935       * @param bound the upper bound (exclusive) of opd values
936       */
# Line 952 | Line 952 | public class CommonOps {
952  
953      /**
954       * Returns a predicate evaluating to true if the
955 <     * first argument {@code equals} the second
955 >     * first argument {@code equals} the second.
956       */
957      public static BinaryPredicate<Object, Object> equalityPredicate() {
958          return EqualityPredicate.predicate;
# Line 967 | Line 967 | public class CommonOps {
967  
968      /**
969       * Returns a predicate evaluating to true if the
970 <     * first argument {@code ==} the second
970 >     * first argument {@code ==} the second.
971       */
972      public static BinaryPredicate<Object, Object> identityPredicate() {
973          return IdentityPredicate.predicate;
# Line 982 | Line 982 | public class CommonOps {
982  
983      /**
984       * Returns a predicate evaluating to true if the
985 <     * first argument {@code ==} the second
985 >     * first argument {@code ==} the second.
986       */
987      public static BinaryIntPredicate intEqualityPredicate() {
988          return IntEqualityPredicate.predicate;
# Line 997 | Line 997 | public class CommonOps {
997  
998      /**
999       * Returns a predicate evaluating to true if the
1000 <     * first argument {@code ==} the second
1000 >     * first argument {@code ==} the second.
1001       */
1002      public static BinaryLongPredicate longEqualityPredicate() {
1003          return LongEqualityPredicate.predicate;
# Line 1012 | Line 1012 | public class CommonOps {
1012  
1013      /**
1014       * Returns a predicate evaluating to true if the
1015 <     * first argument {@code ==} the second
1015 >     * first argument {@code ==} the second.
1016       */
1017      public static BinaryDoublePredicate doubleEqualityPredicate() {
1018          return DoubleEqualityPredicate.predicate;
# Line 1028 | Line 1028 | public class CommonOps {
1028  
1029      /**
1030       * Returns a predicate evaluating to true if the
1031 <     * first argument {@code !equals} the second
1031 >     * first argument {@code !equals} the second.
1032       */
1033      public static BinaryPredicate<Object, Object> inequalityPredicate() {
1034          return InequalityPredicate.predicate;
# Line 1043 | Line 1043 | public class CommonOps {
1043  
1044      /**
1045       * Returns a predicate evaluating to true if the
1046 <     * first argument {@code !=} the second
1046 >     * first argument {@code !=} the second.
1047       */
1048      public static BinaryPredicate<Object, Object> nonidentityPredicate() {
1049          return NonidentityPredicate.predicate;
# Line 1058 | Line 1058 | public class CommonOps {
1058  
1059      /**
1060       * Returns a predicate evaluating to true if the
1061 <     * first argument {@code !=} the second
1061 >     * first argument {@code !=} the second.
1062       */
1063      public static BinaryIntPredicate intInequalityPredicate() {
1064          return IntInequalityPredicate.predicate;
# Line 1073 | Line 1073 | public class CommonOps {
1073  
1074      /**
1075       * Returns a predicate evaluating to true if the
1076 <     * first argument {@code ==} the second
1076 >     * first argument {@code ==} the second.
1077       */
1078      public static BinaryLongPredicate longInequalityPredicate() {
1079          return LongInequalityPredicate.predicate;
# Line 1088 | Line 1088 | public class CommonOps {
1088  
1089      /**
1090       * Returns a predicate evaluating to true if the
1091 <     * first argument {@code !=} the second
1091 >     * first argument {@code !=} the second.
1092       */
1093      public static BinaryDoublePredicate doubleInequalityPredicate() {
1094          return DoubleInequalityPredicate.predicate;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines