Package com.jnape.palatable.lambda.monad
Class SafeT.Body<M extends MonadRec<?,M>,A>
java.lang.Object
com.jnape.palatable.lambda.monad.SafeT.Body<M,A>
- All Implemented Interfaces:
CoProduct2<Either<MonadRec<SafeT.Body<M,
A>, M>, A>, SafeT.Body.Suspended<M, ?, A>, SafeT.Body<M, A>>
- Direct Known Subclasses:
SafeT.Body.Done
,SafeT.Body.More
,SafeT.Body.Suspended
private abstract static class SafeT.Body<M extends MonadRec<?,M>,A>
extends Object
implements CoProduct2<Either<MonadRec<SafeT.Body<M,A>,M>,A>,SafeT.Body.Suspended<M,?,A>,SafeT.Body<M,A>>
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static <M extends MonadRec<?,
M>, A>
SafeT.Body<M, A> done
(A a) private static <M extends MonadRec<?,
M>, A>
SafeT.Body<M, A> more
(MonadRec<SafeT.Body<M, A>, M> mb) resume()
private static <M extends MonadRec<?,
M>, A, B>
SafeT.Body<M, B> suspend
(SafeT.Body<M, A> freeA, Fn1<A, SafeT.Body<M, B>> fn)
-
Constructor Details
-
Body
private Body()
-
-
Method Details
-
resume
-
done
-
more
-
suspend
private static <M extends MonadRec<?,M>, SafeT.Body<M,A, B> B> suspend(SafeT.Body<M, A> freeA, Fn1<A, SafeT.Body<M, B>> fn)
-