This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git


The following commit(s) were added to refs/heads/master by this push:
     new c7d709b  [LANG-1568] Predicate negation and clean ups.
c7d709b is described below

commit c7d709b22074a4f5f952cc2b71f9053a5a38b138
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Thu Jun 25 10:29:57 2020 -0400

    [LANG-1568] Predicate negation and clean ups.
---
 .../commons/lang3/function/FailableBiConsumer.java      |  4 +---
 .../commons/lang3/function/FailableBiFunction.java      |  4 +---
 .../commons/lang3/function/FailableBiPredicate.java     | 16 ++++++++++++++--
 .../apache/commons/lang3/function/FailableConsumer.java |  3 +--
 .../commons/lang3/function/FailableDoubleConsumer.java  |  3 +--
 .../commons/lang3/function/FailableDoublePredicate.java | 17 +++++++++++++++--
 .../lang3/function/FailableDoubleUnaryOperator.java     |  6 ++----
 .../apache/commons/lang3/function/FailableFunction.java |  6 ++----
 .../commons/lang3/function/FailableIntConsumer.java     |  3 +--
 .../commons/lang3/function/FailableIntPredicate.java    |  3 +--
 .../lang3/function/FailableIntUnaryOperator.java        |  6 ++----
 .../commons/lang3/function/FailableLongConsumer.java    |  3 +--
 .../commons/lang3/function/FailableLongPredicate.java   |  3 +--
 .../lang3/function/FailableLongUnaryOperator.java       |  6 ++----
 .../commons/lang3/function/FailablePredicate.java       |  3 +--
 15 files changed, 46 insertions(+), 40 deletions(-)

diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableBiConsumer.java 
b/src/main/java/org/apache/commons/lang3/function/FailableBiConsumer.java
index 6589a4d..8bfe6d5 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableBiConsumer.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableBiConsumer.java
@@ -62,11 +62,9 @@ public interface FailableBiConsumer<T, U, E extends 
Throwable> {
      * @param after the operation to perform after this one.
      * @return a composed {@code FailableBiConsumer} like {@link 
BiConsumer#andThen(BiConsumer)}.
      * @throws NullPointerException when {@code after} is null.
-     * @throws E Thrown when a consumer fails.
      */
-    default FailableBiConsumer<T, U, E> andThen(final FailableBiConsumer<? 
super T, ? super U, E> after) throws E {
+    default FailableBiConsumer<T, U, E> andThen(final FailableBiConsumer<? 
super T, ? super U, E> after) {
         Objects.requireNonNull(after);
-
         return (t, u) -> {
             accept(t, u);
             after.accept(t, u);
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableBiFunction.java 
b/src/main/java/org/apache/commons/lang3/function/FailableBiFunction.java
index f7d6339..23af54f 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableBiFunction.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableBiFunction.java
@@ -57,10 +57,8 @@ public interface FailableBiFunction<T, U, R, E extends 
Throwable> {
      * @param after the operation to perform after this one.
      * @return a composed {@code FailableBiFunction} that like {@link 
BiFunction#andThen(Function)}.
      * @throws NullPointerException when {@code after} is null.
-     * @throws E Thrown when a consumer fails.
      */
-    default <V> FailableBiFunction<T, U, V, E> andThen(final 
FailableFunction<? super R, ? extends V, E> after)
-        throws E {
+    default <V> FailableBiFunction<T, U, V, E> andThen(final 
FailableFunction<? super R, ? extends V, E> after) {
         Objects.requireNonNull(after);
         return (final T t, final U u) -> after.apply(apply(t, u));
     }
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableBiPredicate.java 
b/src/main/java/org/apache/commons/lang3/function/FailableBiPredicate.java
index 75936c9..56c5028 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableBiPredicate.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableBiPredicate.java
@@ -17,6 +17,7 @@
 
 package org.apache.commons.lang3.function;
 
+import java.util.Objects;
 import java.util.function.BiPredicate;
 
 /**
@@ -63,12 +64,23 @@ public interface FailableBiPredicate<T, U, E extends 
Throwable> {
     }
 
     /**
+     * Returns a composed {@code FailableBiPredicate} like {@link 
BiPredicate#and(BiPredicate)}.
+     *
+     * @param other a predicate that will be logically-ANDed with this 
predicate.
+     * @return a composed {@code FailableBiPredicate} like {@link 
BiPredicate#and(BiPredicate)}.
+     * @throws NullPointerException if other is null
+     */
+    default FailableBiPredicate<T, U, E> and(FailableBiPredicate<? super T, ? 
super U, E> other) {
+        Objects.requireNonNull(other);
+        return (T t, U u) -> test(t, u) && other.test(t, u);
+    }
+
+    /**
      * Returns a predicate that negates this predicate.
      *
      * @return a predicate that negates this predicate.
-     * @throws E Thrown when this predicate fails.
      */
-    default FailableBiPredicate<T, U, E> negate() throws E {
+    default FailableBiPredicate<T, U, E> negate() {
         return (final T t, final U u) -> !test(t, u);
     }
 
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableConsumer.java 
b/src/main/java/org/apache/commons/lang3/function/FailableConsumer.java
index 3df422b..aa7a8de 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableConsumer.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableConsumer.java
@@ -59,9 +59,8 @@ public interface FailableConsumer<T, E extends Throwable> {
      * @param after the operation to perform after this operation
      * @return a composed {@code Consumer} like {@link 
Consumer#andThen(Consumer)}.
      * @throws NullPointerException when {@code after} is null
-     * @throws E Thrown when a consumer fails.
      */
-    default FailableConsumer<T, E> andThen(final FailableConsumer<? super T, 
E> after) throws E {
+    default FailableConsumer<T, E> andThen(final FailableConsumer<? super T, 
E> after) {
         Objects.requireNonNull(after);
         return (final T t) -> {
             accept(t);
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableDoubleConsumer.java 
b/src/main/java/org/apache/commons/lang3/function/FailableDoubleConsumer.java
index 3b37919..edd71fb 100644
--- 
a/src/main/java/org/apache/commons/lang3/function/FailableDoubleConsumer.java
+++ 
b/src/main/java/org/apache/commons/lang3/function/FailableDoubleConsumer.java
@@ -57,9 +57,8 @@ public interface FailableDoubleConsumer<E extends Throwable> {
      * @param after the operation to perform after this one.
      * @return a composed {@code FailableDoubleConsumer} like {@link 
DoubleConsumer#andThen(DoubleConsumer)}.
      * @throws NullPointerException when {@code after} is null.
-     * @throws E Thrown when a consumer fails.
      */
-    default FailableDoubleConsumer<E> andThen(final FailableDoubleConsumer<E> 
after) throws E {
+    default FailableDoubleConsumer<E> andThen(final FailableDoubleConsumer<E> 
after) {
         Objects.requireNonNull(after);
         return (final double t) -> {
             accept(t);
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableDoublePredicate.java 
b/src/main/java/org/apache/commons/lang3/function/FailableDoublePredicate.java
index db3fdac..0c7def5 100644
--- 
a/src/main/java/org/apache/commons/lang3/function/FailableDoublePredicate.java
+++ 
b/src/main/java/org/apache/commons/lang3/function/FailableDoublePredicate.java
@@ -17,6 +17,8 @@
 
 package org.apache.commons.lang3.function;
 
+import java.util.Objects;
+import java.util.function.BiPredicate;
 import java.util.function.DoublePredicate;
 
 /**
@@ -28,6 +30,18 @@ import java.util.function.DoublePredicate;
 @FunctionalInterface
 public interface FailableDoublePredicate<E extends Throwable> {
 
+    /**
+     * Returns a composed {@code FailableBiPredicate} like {@link 
BiPredicate#and(BiPredicate)}.
+     *
+     * @param other a predicate that will be logically-ANDed with this 
predicate.
+     * @return a composed {@code FailableBiPredicate} like {@link 
BiPredicate#and(BiPredicate)}.
+     * @throws NullPointerException if other is null
+     */
+    default FailableDoublePredicate<E> and(FailableDoublePredicate<E> other) {
+        Objects.requireNonNull(other);
+        return t -> test(t) && other.test(t);
+    }
+
     /** FALSE singleton */
     @SuppressWarnings("rawtypes")
     FailableDoublePredicate FALSE = t -> false;
@@ -60,9 +74,8 @@ public interface FailableDoublePredicate<E extends Throwable> 
{
      * Returns a predicate that negates this predicate.
      *
      * @return a predicate that negates this predicate.
-     * @throws E Thrown when this predicate fails.
      */
-    default FailableDoublePredicate<E> negate() throws E {
+    default FailableDoublePredicate<E> negate() {
         return t -> !test(t);
     }
 
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableDoubleUnaryOperator.java
 
b/src/main/java/org/apache/commons/lang3/function/FailableDoubleUnaryOperator.java
index 2674f1d..9e542fd 100644
--- 
a/src/main/java/org/apache/commons/lang3/function/FailableDoubleUnaryOperator.java
+++ 
b/src/main/java/org/apache/commons/lang3/function/FailableDoubleUnaryOperator.java
@@ -60,10 +60,9 @@ public interface FailableDoubleUnaryOperator<E extends 
Throwable> {
      * @return a composed {@code FailableDoubleUnaryOperator} like
      *         {@link DoubleUnaryOperator#andThen(DoubleUnaryOperator)}.
      * @throws NullPointerException if after is null.
-     * @throws E Thrown when a consumer fails.
      * @see #compose(FailableDoubleUnaryOperator)
      */
-    default FailableDoubleUnaryOperator<E> andThen(final 
FailableDoubleUnaryOperator<E> after) throws E {
+    default FailableDoubleUnaryOperator<E> andThen(final 
FailableDoubleUnaryOperator<E> after) {
         Objects.requireNonNull(after);
         return (final double t) -> after.applyAsDouble(applyAsDouble(t));
     }
@@ -85,10 +84,9 @@ public interface FailableDoubleUnaryOperator<E extends 
Throwable> {
      * @return a composed {@code FailableDoubleUnaryOperator} like
      *         {@link DoubleUnaryOperator#compose(DoubleUnaryOperator)}.
      * @throws NullPointerException if before is null.
-     * @throws E Thrown when a consumer fails.
      * @see #andThen(FailableDoubleUnaryOperator)
      */
-    default FailableDoubleUnaryOperator<E> compose(final 
FailableDoubleUnaryOperator<E> before) throws E {
+    default FailableDoubleUnaryOperator<E> compose(final 
FailableDoubleUnaryOperator<E> before) {
         Objects.requireNonNull(before);
         return (final double v) -> applyAsDouble(before.applyAsDouble(v));
     }
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableFunction.java 
b/src/main/java/org/apache/commons/lang3/function/FailableFunction.java
index 49af31c..715e265 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableFunction.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableFunction.java
@@ -65,9 +65,8 @@ public interface FailableFunction<T, R, E extends Throwable> {
      * @return a composed {@code FailableFunction} like {@link 
Function#andThen(Function)}.
      * @param after the operation to perform after this one.
      * @throws NullPointerException when {@code after} is null.
-     * @throws E Thrown when a consumer fails.
      */
-    default <V> FailableFunction<T, V, E> andThen(final FailableFunction<? 
super R, ? extends V, E> after) throws E {
+    default <V> FailableFunction<T, V, E> andThen(final FailableFunction<? 
super R, ? extends V, E> after) {
         Objects.requireNonNull(after);
         return (final T t) -> after.apply(apply(t));
     }
@@ -88,10 +87,9 @@ public interface FailableFunction<T, R, E extends Throwable> 
{
      * @param before the operator to apply before this one.
      * @return a a composed {@code FailableFunction} like {@link 
Function#compose(Function)}.
      * @throws NullPointerException if before is null.
-     * @throws E Thrown when a consumer fails.
      * @see #andThen(FailableFunction)
      */
-    default <V> FailableFunction<V, R, E> compose(final FailableFunction<? 
super V, ? extends T, E> before) throws E {
+    default <V> FailableFunction<V, R, E> compose(final FailableFunction<? 
super V, ? extends T, E> before) {
         Objects.requireNonNull(before);
         return (final V v) -> apply(before.apply(v));
     }
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableIntConsumer.java 
b/src/main/java/org/apache/commons/lang3/function/FailableIntConsumer.java
index 64429df..ee7a15f 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableIntConsumer.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableIntConsumer.java
@@ -57,9 +57,8 @@ public interface FailableIntConsumer<E extends Throwable> {
      * @param after the operation to perform after this one.
      * @return a composed {@code FailableLongConsumer} like {@link 
IntConsumer#andThen(IntConsumer)}.
      * @throws NullPointerException if {@code after} is null
-     * @throws E Thrown when a consumer fails.
      */
-    default FailableIntConsumer<E> andThen(final FailableIntConsumer<E> after) 
throws E {
+    default FailableIntConsumer<E> andThen(final FailableIntConsumer<E> after) 
{
         Objects.requireNonNull(after);
         return (final int t) -> {
             accept(t);
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableIntPredicate.java 
b/src/main/java/org/apache/commons/lang3/function/FailableIntPredicate.java
index 12bd5c0..babfceb 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableIntPredicate.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableIntPredicate.java
@@ -60,9 +60,8 @@ public interface FailableIntPredicate<E extends Throwable> {
      * Returns a predicate that negates this predicate.
      *
      * @return a predicate that negates this predicate.
-     * @throws E Thrown when this predicate fails.
      */
-    default FailableIntPredicate<E> negate() throws E {
+    default FailableIntPredicate<E> negate() {
         return t -> !test(t);
     }
 
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableIntUnaryOperator.java 
b/src/main/java/org/apache/commons/lang3/function/FailableIntUnaryOperator.java
index b685885..578e532 100644
--- 
a/src/main/java/org/apache/commons/lang3/function/FailableIntUnaryOperator.java
+++ 
b/src/main/java/org/apache/commons/lang3/function/FailableIntUnaryOperator.java
@@ -58,10 +58,9 @@ public interface FailableIntUnaryOperator<E extends 
Throwable> {
      * @param after the operator to apply after this one.
      * @return a composed {@code FailableIntUnaryOperator} like {@link 
IntUnaryOperator#andThen(IntUnaryOperator)}.
      * @throws NullPointerException if after is null.
-     * @throws E Thrown when a consumer fails.
      * @see #compose(FailableIntUnaryOperator)
      */
-    default FailableIntUnaryOperator<E> andThen(final 
FailableIntUnaryOperator<E> after) throws E {
+    default FailableIntUnaryOperator<E> andThen(final 
FailableIntUnaryOperator<E> after) {
         Objects.requireNonNull(after);
         return (final int t) -> after.applyAsInt(applyAsInt(t));
     }
@@ -81,10 +80,9 @@ public interface FailableIntUnaryOperator<E extends 
Throwable> {
      * @param before the operator to apply before this one.
      * @return a composed {@code FailableIntUnaryOperator} like {@link 
IntUnaryOperator#compose(IntUnaryOperator)}.
      * @throws NullPointerException if before is null.
-     * @throws E Thrown when a consumer fails.
      * @see #andThen(FailableIntUnaryOperator)
      */
-    default FailableIntUnaryOperator<E> compose(final 
FailableIntUnaryOperator<E> before) throws E {
+    default FailableIntUnaryOperator<E> compose(final 
FailableIntUnaryOperator<E> before) {
         Objects.requireNonNull(before);
         return (final int v) -> applyAsInt(before.applyAsInt(v));
     }
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableLongConsumer.java 
b/src/main/java/org/apache/commons/lang3/function/FailableLongConsumer.java
index c2a0ca8..de5bd4f 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableLongConsumer.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableLongConsumer.java
@@ -57,9 +57,8 @@ public interface FailableLongConsumer<E extends Throwable> {
      * @param after the operation to perform after this one.
      * @return a composed {@code FailableLongConsumer} like {@link 
LongConsumer#andThen(LongConsumer)}.
      * @throws NullPointerException if {@code after} is null
-     * @throws E Thrown when a consumer fails.
      */
-    default FailableLongConsumer<E> andThen(final FailableLongConsumer<E> 
after) throws E {
+    default FailableLongConsumer<E> andThen(final FailableLongConsumer<E> 
after) {
         Objects.requireNonNull(after);
         return (final long t) -> {
             accept(t);
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableLongPredicate.java 
b/src/main/java/org/apache/commons/lang3/function/FailableLongPredicate.java
index b267ead..33714aa 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailableLongPredicate.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailableLongPredicate.java
@@ -60,9 +60,8 @@ public interface FailableLongPredicate<E extends Throwable> {
      * Returns a predicate that negates this predicate.
      *
      * @return a predicate that negates this predicate.
-     * @throws E Thrown when this predicate fails.
      */
-    default FailableLongPredicate<E> negate() throws E {
+    default FailableLongPredicate<E> negate() {
         return t -> !test(t);
     }
 
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailableLongUnaryOperator.java
 
b/src/main/java/org/apache/commons/lang3/function/FailableLongUnaryOperator.java
index 6f980b7..b997eb0 100644
--- 
a/src/main/java/org/apache/commons/lang3/function/FailableLongUnaryOperator.java
+++ 
b/src/main/java/org/apache/commons/lang3/function/FailableLongUnaryOperator.java
@@ -58,10 +58,9 @@ public interface FailableLongUnaryOperator<E extends 
Throwable> {
      * @param after the operator to apply after this one.
      * @return a composed {@code FailableLongUnaryOperator} like {@link 
LongUnaryOperator#andThen(LongUnaryOperator)}.
      * @throws NullPointerException if after is null.
-     * @throws E Thrown when a consumer fails.
      * @see #compose(FailableLongUnaryOperator)
      */
-    default FailableLongUnaryOperator<E> andThen(final 
FailableLongUnaryOperator<E> after) throws E {
+    default FailableLongUnaryOperator<E> andThen(final 
FailableLongUnaryOperator<E> after) {
         Objects.requireNonNull(after);
         return (final long t) -> after.applyAsLong(applyAsLong(t));
     }
@@ -81,10 +80,9 @@ public interface FailableLongUnaryOperator<E extends 
Throwable> {
      * @param before the operator to apply before this one.
      * @return a composed {@code FailableLongUnaryOperator} like {@link 
LongUnaryOperator#compose(LongUnaryOperator)}.
      * @throws NullPointerException if before is null.
-     * @throws E Thrown when a consumer fails.
      * @see #andThen(FailableLongUnaryOperator)
      */
-    default FailableLongUnaryOperator<E> compose(final 
FailableLongUnaryOperator<E> before) throws E {
+    default FailableLongUnaryOperator<E> compose(final 
FailableLongUnaryOperator<E> before) {
         Objects.requireNonNull(before);
         return (final long v) -> applyAsLong(before.applyAsLong(v));
     }
diff --git 
a/src/main/java/org/apache/commons/lang3/function/FailablePredicate.java 
b/src/main/java/org/apache/commons/lang3/function/FailablePredicate.java
index ce49539..160f2f5 100644
--- a/src/main/java/org/apache/commons/lang3/function/FailablePredicate.java
+++ b/src/main/java/org/apache/commons/lang3/function/FailablePredicate.java
@@ -63,9 +63,8 @@ public interface FailablePredicate<T, E extends Throwable> {
      * Returns a predicate that negates this predicate.
      *
      * @return a predicate that negates this predicate.
-     * @throws E Thrown when this predicate fails.
      */
-    default FailablePredicate<T, E> negate() throws E {
+    default FailablePredicate<T, E> negate() {
         return t -> !test(t);
     }
 

Reply via email to