Package Torello.Java.Function
Interface HexPredicate<A,B,C,D,E,F>
-
- Type Parameters:
A
- The type of the first input-parameter.B
- The type of the second input-parameter.C
- The type of the third input-parameter.D
- The type of the fourth input-parameter.E
- The type of the fifth input-parameter.F
- The type of the last input-parameter.
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface HexPredicate<A,B,C,D,E,F>
Function-Pointer Input:A, B, C, D, E, F
Output:boolean
.
This is an extension of Java's original functional-interfaces package. TheFunctional Interface
designed here creates a "Hex Predicate" - a straight-forward extension ofinterface java.util.function.Predicate
- but instead has a'test(...)'
method receiving six variable-type parameters instead of just one.
NOTE: Java's Basic Packagejava.util.function.*
, contains aninterface
namedBiPredicate
, that extends the basicPredicate<T>
tointerface BiPredicate<T, U>
. Theinterface
that is implemented here follows a similar vein, but extends the number of generic type-parameters to six, instead of two.
Obviously, for allPredicate's
in Java, thetest(..)
shall return aboolean
.
Hi-Lited Source-Code:- View Here: Torello/Java/Function/HexPredicate.java
- Open New Browser-Tab: Torello/Java/Function/HexPredicate.java
File Size: 2,983 Bytes Line Count: 74 '\n' Characters Found
-
-
Method Summary
@FunctionalInterface: (Lambda) Method Modifier and Type Method boolean
test(A a, B b, C c, D d, E e, F f)
Default Composition & Builder Method(s) Modifier and Type Method default HexPredicate<A,
B,
C,
D,
E,
F>and(HexPredicate<? super A,? super B,? super C,? super D,? super E,? super F> other)
default HexPredicate<A,
B,
C,
D,
E,
F>negate()
default HexPredicate<A,
B,
C,
D,
E,
F>or(HexPredicate<? super A,? super B,? super C,? super D,? super E,? super F> other)
-
-
-
Method Detail
-
test
boolean test(A a, B b, C c, D d, E e, F f)
Evaluates"this"
predicate on the given arguments.
FunctionalInterface Target-Method:
This method corresponds to the@FunctionalInterface
Annotation's method requirement. It is the only non-default
, non-static
method in this interface, and may be the target of a Lambda-Expression or'::'
(double-colon) Function-Pointer.- Parameters:
a
- the first input argumentb
- the second input argumentc
- the third input argumentd
- the fourth input argumente
- the fifth input argumentf
- the sixth input argument- Returns:
TRUE
if the input arguments match the predicate, otherwise FALSE
-
and
default HexPredicate<A,B,C,D,E,F> and (HexPredicate<? super A,? super B,? super C,? super D,? super E,? super F> other)
Returns a composed predicate that represents a short-circuiting logical'AND'
of this predicate and another. When evaluating the composed predicate, if this predicate is FALSE, then the other predicate is not evaluated.
Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.- Parameters:
other
- A predicate that will be logically-AND'ed with this predicate- Returns:
- A composed predicate that represents the short-circuiting logical
'AND'
of this predicate and the other predicate - Throws:
java.lang.NullPointerException
- if parameter'other'
is null.- Code:
- Exact Method Body:
if (other == null) throw new NullPointerException("null has been passed to parameter 'other"); return (A a, B b, C c, D d, E e, F f) -> this.test(a, b, c, d, e, f) && other.test(a, b, c, d, e, f);
-
negate
-
or
default HexPredicate<A,B,C,D,E,F> or (HexPredicate<? super A,? super B,? super C,? super D,? super E,? super F> other)
Returns a composed predicate that represents a short-circuiting logical'OR'
of this predicate and another. When evaluating the composed predicate, if this predicate is TRUE, then the other predicate is not evaluated.
Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.- Parameters:
other
- a predicate that will be logically-ORed with this predicate- Returns:
- a composed predicate that represents the short-circuiting logical
'OR'
of this predicate and the other predicate - Throws:
java.lang.NullPointerException
- if parameter'other'
is null.- Code:
- Exact Method Body:
if (other == null) throw new NullPointerException("null has been passed to parameter 'other"); return (A a, B b, C c, D d, E e, F f) -> this.test(a, b, c, d, e, f) || other.test(a, b, c, d, e, f);
-
-