View Javadoc
1   package io.atlassian.fugue.extensions.functions;
2   
3   /**
4    * Represents a predicate (boolean-valued function) of four arguments.
5    * <p>
6    * This is afunctional interface whose functional method is
7    * {@link #test(Object, Object, Object, Object)}.
8    *
9    * @param <A> the type of the first argument to the predicate
10   * @param <B> the type of the second argument to the predicate
11   * @param <C> the type of the third argument to the predicate
12   * @param <D> the type of the fourth argument to the predicate
13   * @see java.util.function.Predicate
14   * @see java.util.function.BiPredicate
15   * @since 4.7.0
16   */
17  @FunctionalInterface public interface Predicate4<A, B, C, D> {
18  
19    /**
20     * Evaluates this predicate on the given arguments.
21     *
22     * @param a the first input argument
23     * @param b the second input argument
24     * @param c the third input argument
25     * @param d the fourth input argument
26     * @return {@code true} if the input arguments match the predicate, otherwise
27     * {@code false}
28     */
29    boolean test(A a, B b, C c, D d);
30  
31  }