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); }