Class Absent<A>
java.lang.Object
com.jnape.palatable.lambda.semigroup.builtin.Absent<A>
- Type Parameters:
A
- the Maybe value parameter type
- All Implemented Interfaces:
Fn1<Semigroup<A>,
,Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>> Fn2<Semigroup<A>,
,Maybe<A>, Fn1<Maybe<A>, Maybe<A>>> Fn3<Semigroup<A>,
,Maybe<A>, Maybe<A>, Maybe<A>> SemigroupFactory<Semigroup<A>,
,Maybe<A>> Applicative<Fn1<Maybe<A>,
,Fn1<Maybe<A>, Maybe<A>>>, Fn1<Semigroup<A>, ?>> Cartesian<Semigroup<A>,
,Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>, Fn1<?, ?>> Cocartesian<Semigroup<A>,
,Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>, Fn1<?, ?>> Contravariant<Semigroup<A>,
,Profunctor<?, Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>, Fn1<?, ?>>> Functor<Fn1<Maybe<A>,
,Fn1<Maybe<A>, Maybe<A>>>, Fn1<Semigroup<A>, ?>> Profunctor<Semigroup<A>,
,Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>, Fn1<?, ?>> Monad<Fn1<Maybe<A>,
,Fn1<Maybe<A>, Maybe<A>>>, Fn1<Semigroup<A>, ?>> MonadReader<Semigroup<A>,
,Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>, Fn1<Semigroup<A>, ?>> MonadRec<Fn1<Maybe<A>,
,Fn1<Maybe<A>, Maybe<A>>>, Fn1<Semigroup<A>, ?>> MonadWriter<Semigroup<A>,
Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>, Fn1<Semigroup<A>, ?>>
A
Semigroup
instance formed by Maybe
<A>
and a semigroup over A
. The
application to two Maybe
values is absence-biased, such that for a given Maybe
x
and y
:
- if
x
is absent, the result isx
- if
x
is present andy
is absent, the result isy
- if both
x
andy
are present, the result is the application of the x and y values in terms of the provided semigroup, wrapped inMaybe.just(A)
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <A> Absent
<A> absent()
static <A> Maybe
<A> checkedApply
(Semigroup<A> aSemigroup) Invoke this function with the given argument, potentially throwing anyThrowable
.shortCircuitSemigroup
(Semigroup<A> aSemigroup) 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.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
toBiFunction
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn3
apply, apply, checkedApply, compose, contraMap, diMapL, discardR, flip, uncurry, widen
Methods inherited from interface com.jnape.palatable.lambda.functions.specialized.SemigroupFactory
apply, checkedApply
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
Absent
private Absent()
-
-
Method Details
-
checkedApply
Description copied from interface:Fn2
Invoke this function with the given argument, potentially throwing anyThrowable
.- Specified by:
checkedApply
in interfaceFn1<Semigroup<A>,
Fn1<Maybe<A>, Fn1<Maybe<A>, Maybe<A>>>> - Specified by:
checkedApply
in interfaceFn2<Semigroup<A>,
Maybe<A>, Fn1<Maybe<A>, Maybe<A>>> - Specified by:
checkedApply
in interfaceSemigroupFactory<Semigroup<A>,
Maybe<A>> - Parameters:
aSemigroup
- the argument- Returns:
- the result of the function application
-
absent
-
absent
-
absent
-
absent
-
shortCircuitSemigroup
-