Interface BiPredicate<A,B>
-
- Type Parameters:
A
- the first argument typeB
- the second argument type
- All Superinterfaces:
Applicative<Fn1<B,java.lang.Boolean>,Fn1<A,?>>
,Cartesian<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
,Cocartesian<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
,Contravariant<A,Profunctor<?,Fn1<B,java.lang.Boolean>,Fn1<?,?>>>
,Fn1<A,Fn1<B,java.lang.Boolean>>
,Fn2<A,B,java.lang.Boolean>
,Functor<Fn1<B,java.lang.Boolean>,Fn1<A,?>>
,Monad<Fn1<B,java.lang.Boolean>,Fn1<A,?>>
,MonadReader<A,Fn1<B,java.lang.Boolean>,Fn1<A,?>>
,MonadRec<Fn1<B,java.lang.Boolean>,Fn1<A,?>>
,MonadWriter<A,Fn1<B,java.lang.Boolean>,Fn1<A,?>>
,Profunctor<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- 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 BiPredicate<A,B> extends Fn2<A,B,java.lang.Boolean>
-
-
Method Summary
All Methods Static Methods Instance Methods Default Methods Modifier and Type Method Description default BiPredicate<A,B>
and(BiPredicate<? super A,? super B> other)
Left-to-right short-circuiting logical conjunction.default Predicate<B>
apply(A a)
Partially apply this function by passing its first argument.default <Z> Fn2<Z,B,java.lang.Boolean>
contraMap(Fn1<? super Z,? extends A> fn)
Contravariantly mapA <- B
.default <Z> BiPredicate<Z,B>
diMapL(Fn1<? super Z,? extends A> fn)
Contravariantly map over the argument to this function, producing a function that takes the new argument type, and produces the same result.default <D> BiPredicate<A,B>
discardR(Applicative<D,Fn1<A,?>> appB)
Sequence both thisApplicative
andappB
, discardingappB's
result and returning thisApplicative
.default BiPredicate<B,A>
flip()
Flip the order of the arguments.static <A,B>
BiPredicate<A,B>fromBiPredicate(java.util.function.BiPredicate<A,B> biPredicate)
Create aBiPredicate
from a javaBiPredicate
.default BiPredicate<A,B>
negate()
Logical negation.default BiPredicate<A,B>
or(BiPredicate<? super A,? super B> other)
Left-to-right short-circuiting logical disjunction.default java.util.function.BiPredicate<A,B>
toBiPredicate()
Convert thisBiPredicate
to a javaBiPredicate
.default Predicate<? super Product2<? extends A,? extends B>>
uncurry()
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn1
andThen, carry, cartesian, censor, choose, cocartesian, diMap, diMapR, discardL, flatMap, fmap, lazyZip, listens, local, pure, self, thunk, toFunction, trampolineM, zip, zip
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn2
apply, checkedApply, checkedApply, compose, toBiFunction, widen
-
-
-
-
Method Detail
-
flip
default BiPredicate<B,A> flip()
Flip the order of the arguments.
-
discardR
default <D> BiPredicate<A,B> discardR(Applicative<D,Fn1<A,?>> appB)
Sequence both thisApplicative
andappB
, discardingappB's
result and returning thisApplicative
. This is generally useful for sequentially performing side-effects.- Specified by:
discardR
in interfaceApplicative<A,B>
- Specified by:
discardR
in interfaceFn1<A,B>
- Specified by:
discardR
in interfaceFn2<A,B,java.lang.Boolean>
- Specified by:
discardR
in interfaceMonad<A,B>
- Specified by:
discardR
in interfaceMonadReader<A,Fn1<B,java.lang.Boolean>,Fn1<A,?>>
- Specified by:
discardR
in interfaceMonadRec<A,B>
- Specified by:
discardR
in interfaceMonadWriter<A,Fn1<B,java.lang.Boolean>,Fn1<A,?>>
- Type Parameters:
D
- the type of appB's parameter- Parameters:
appB
- the other Applicative- Returns:
- this Applicative
-
diMapL
default <Z> BiPredicate<Z,B> diMapL(Fn1<? super Z,? extends A> fn)
Contravariantly map over the argument to this function, producing a function that takes the new argument type, and produces the same result.- Specified by:
diMapL
in interfaceCartesian<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- Specified by:
diMapL
in interfaceCocartesian<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- Specified by:
diMapL
in interfaceFn1<A,B>
- Specified by:
diMapL
in interfaceFn2<A,B,java.lang.Boolean>
- Specified by:
diMapL
in interfaceProfunctor<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- Type Parameters:
Z
- the new argument type- Parameters:
fn
- the contravariant argument mapping function- Returns:
- an
Fn1
<Z, B>
-
contraMap
default <Z> Fn2<Z,B,java.lang.Boolean> contraMap(Fn1<? super Z,? extends A> fn)
Contravariantly mapA <- B
.- Specified by:
contraMap
in interfaceCartesian<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- Specified by:
contraMap
in interfaceCocartesian<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- Specified by:
contraMap
in interfaceContravariant<A,B>
- Specified by:
contraMap
in interfaceFn1<A,B>
- Specified by:
contraMap
in interfaceFn2<A,B,java.lang.Boolean>
- Specified by:
contraMap
in interfaceProfunctor<A,Fn1<B,java.lang.Boolean>,Fn1<?,?>>
- Type Parameters:
Z
- the new parameter type- Parameters:
fn
- the mapping function- Returns:
- the mapped Contravariant functor instance
-
and
default BiPredicate<A,B> and(BiPredicate<? super A,? super B> other)
Left-to-right short-circuiting logical conjunction.- Parameters:
other
- the biPredicate to test if this one succeeds- Returns:
- a biPredicate representing the conjunction of this biPredicate and other
-
or
default BiPredicate<A,B> or(BiPredicate<? super A,? super B> other)
Left-to-right short-circuiting logical disjunction.- Parameters:
other
- the biPredicate to test if this one fails- Returns:
- a biPredicate representing the disjunction of this biPredicate and other
-
negate
default BiPredicate<A,B> negate()
Logical negation.- Returns:
- the negation of this biPredicate
-
toBiPredicate
default java.util.function.BiPredicate<A,B> toBiPredicate()
Convert thisBiPredicate
to a javaBiPredicate
.- Returns:
BiPredicate
-
fromBiPredicate
static <A,B> BiPredicate<A,B> fromBiPredicate(java.util.function.BiPredicate<A,B> biPredicate)
Create aBiPredicate
from a javaBiPredicate
.- Type Parameters:
A
- the first input typeB
- the second input type- Parameters:
biPredicate
- theBiPredicate
- Returns:
- the
BiPredicate
-
-