Class Xor
- java.lang.Object
-
- com.jnape.palatable.lambda.monoid.builtin.Xor
-
- All Implemented Interfaces:
Fn1<java.lang.Boolean,Fn1<java.lang.Boolean,java.lang.Boolean>>,Fn2<java.lang.Boolean,java.lang.Boolean,java.lang.Boolean>,BiPredicate<java.lang.Boolean,java.lang.Boolean>,Applicative<Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<java.lang.Boolean,?>>,Cartesian<java.lang.Boolean,Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<?,?>>,Cocartesian<java.lang.Boolean,Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<?,?>>,Contravariant<java.lang.Boolean,Profunctor<?,Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<?,?>>>,Functor<Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<java.lang.Boolean,?>>,Profunctor<java.lang.Boolean,Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<?,?>>,Monad<Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<java.lang.Boolean,?>>,MonadReader<java.lang.Boolean,Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<java.lang.Boolean,?>>,MonadRec<Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<java.lang.Boolean,?>>,MonadWriter<java.lang.Boolean,Fn1<java.lang.Boolean,java.lang.Boolean>,Fn1<java.lang.Boolean,?>>,Monoid<java.lang.Boolean>,Semigroup<java.lang.Boolean>
public final class Xor extends java.lang.Object implements Monoid<java.lang.Boolean>, BiPredicate<java.lang.Boolean,java.lang.Boolean>
Logical exclusive-or. Equivalent to logical^.Note that this implementation behaves as a cascade of binary exclusive-or operations, as is the only possible monoidal behavior when applied to an unknown number of inputs.
-
-
Constructor Summary
Constructors Modifier Constructor Description privateXor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.BooleancheckedApply(java.lang.Boolean x, java.lang.Boolean y)Xorflip()Flip the order of the arguments.java.lang.Booleanidentity()The identity element of this monoid.static Xorxor()static Fn1<java.lang.Boolean,java.lang.Boolean>xor(java.lang.Boolean x)static java.lang.Booleanxor(java.lang.Boolean x, java.lang.Boolean y)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.jnape.palatable.lambda.functions.specialized.BiPredicate
and, apply, contraMap, diMapL, discardR, negate, or, toBiPredicate, 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, compose, toBiFunction, widen
-
Methods inherited from interface com.jnape.palatable.lambda.monoid.Monoid
foldLeft, foldMap, foldRight, reduceLeft, reduceRight
-
-
-
-
Field Detail
-
INSTANCE
private static final Xor INSTANCE
-
-
Method Detail
-
identity
public java.lang.Boolean identity()
Description copied from interface:MonoidThe identity element of this monoid.
-
checkedApply
public java.lang.Boolean checkedApply(java.lang.Boolean x, java.lang.Boolean y)- Specified by:
checkedApplyin interfaceFn2<java.lang.Boolean,java.lang.Boolean,java.lang.Boolean>
-
flip
public Xor flip()
Description copied from interface:MonoidFlip the order of the arguments.- Specified by:
flipin interfaceBiPredicate<java.lang.Boolean,java.lang.Boolean>- Specified by:
flipin interfaceFn2<java.lang.Boolean,java.lang.Boolean,java.lang.Boolean>- Specified by:
flipin interfaceMonoid<java.lang.Boolean>- Specified by:
flipin interfaceSemigroup<java.lang.Boolean>- Returns:
- an
Fn2<B, A, C>
-
xor
public static Xor xor()
-
xor
public static Fn1<java.lang.Boolean,java.lang.Boolean> xor(java.lang.Boolean x)
-
xor
public static java.lang.Boolean xor(java.lang.Boolean x, java.lang.Boolean y)
-
-