aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/apache/commons/lang3/function
diff options
context:
space:
mode:
authorGary Gregory <garydgregory@gmail.com>2020-06-25 10:29:57 -0400
committerGary Gregory <garydgregory@gmail.com>2020-06-25 10:29:57 -0400
commitc7d709b22074a4f5f952cc2b71f9053a5a38b138 (patch)
treeb5ff76e5806e5ea3eb39c361fd92b55c10d467fe /src/main/java/org/apache/commons/lang3/function
parenta881c3e22665f65d974063d0536fdfd75f45d0d3 (diff)
downloadapache-commons-lang-c7d709b22074a4f5f952cc2b71f9053a5a38b138.tar.gz
[LANG-1568] Predicate negation and clean ups.
Diffstat (limited to 'src/main/java/org/apache/commons/lang3/function')
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableBiConsumer.java4
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableBiFunction.java4
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableBiPredicate.java16
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableConsumer.java3
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableDoubleConsumer.java3
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableDoublePredicate.java17
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableDoubleUnaryOperator.java6
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableFunction.java6
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableIntConsumer.java3
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableIntPredicate.java3
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableIntUnaryOperator.java6
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableLongConsumer.java3
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableLongPredicate.java3
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailableLongUnaryOperator.java6
-rw-r--r--src/main/java/org/apache/commons/lang3/function/FailablePredicate.java3
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 6589a4d78..8bfe6d534 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 f7d633943..23af54fc0 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 75936c9e2..56c5028ec 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 3df422bf8..aa7a8de69 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 3b3791981..edd71fbcb 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 db3fdacdd..0c7def5ae 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 2674f1d86..9e542fd6e 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 49af31c39..715e2650e 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 64429df00..ee7a15f3a 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 12bd5c0cc..babfceb87 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 b685885d9..578e5322a 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 c2a0ca8a5..de5bd4f46 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 b267ead67..33714aa31 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 6f980b765..b997eb064 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 ce49539b9..160f2f571 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);
}