Constructors

Link copied to clipboard
fun FlatMap()

Functions

Link copied to clipboard
inline fun <B> coflatMap(crossinline f: (Eval<A>) -> B): Eval<B>
Link copied to clipboard
fun <B> flatMap(f: (A) -> Eval<B>): Eval<B>
Link copied to clipboard
inline fun <B> map(crossinline f: (A) -> B): Eval<B>
Link copied to clipboard
open override fun memoize(): Eval<A>
Link copied to clipboard
abstract fun <S> run(s: S): Eval<A>
Link copied to clipboard
abstract fun <S> start(): Eval<S>
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open override fun value(): A

Extensions

Link copied to clipboard
fun <A> Eval<A>.replicate(n: Int): Eval<List<A>>
fun <A> Eval<A>.replicate(n: Int, MA: Monoid<A>): Eval<A>
Link copied to clipboard
fun <A, B, Z> Eval<A>.zip(b: Eval<B>, map: (A, B) -> Z): Eval<Z>
fun <A, B> Eval<A>.zip(b: Eval<B>): Eval<Pair<A, B>>
fun <A, B, C, D> Eval<A>.zip(b: Eval<B>, c: Eval<C>, map: (A, B, C) -> D): Eval<D>
fun <A, B, C, D, E> Eval<A>.zip(b: Eval<B>, c: Eval<C>, d: Eval<D>, map: (A, B, C, D) -> E): Eval<E>
fun <A, B, C, D, E, F> Eval<A>.zip(b: Eval<B>, c: Eval<C>, d: Eval<D>, e: Eval<E>, map: (A, B, C, D, E) -> F): Eval<F>
fun <A, B, C, D, E, F, G> Eval<A>.zip(b: Eval<B>, c: Eval<C>, d: Eval<D>, e: Eval<E>, f: Eval<F>, map: (A, B, C, D, E, F) -> G): Eval<G>
fun <A, B, C, D, E, F, G, H> Eval<A>.zip(    b: Eval<B>,     c: Eval<C>,     d: Eval<D>,     e: Eval<E>,     f: Eval<F>,     g: Eval<G>,     map: (A, B, C, D, E, F, G) -> H): Eval<H>
fun <A, B, C, D, E, F, G, H, I> Eval<A>.zip(    b: Eval<B>,     c: Eval<C>,     d: Eval<D>,     e: Eval<E>,     f: Eval<F>,     g: Eval<G>,     h: Eval<H>,     map: (A, B, C, D, E, F, G, H) -> I): Eval<I>
fun <A, B, C, D, E, F, G, H, I, J> Eval<A>.zip(    b: Eval<B>,     c: Eval<C>,     d: Eval<D>,     e: Eval<E>,     f: Eval<F>,     g: Eval<G>,     h: Eval<H>,     i: Eval<I>,     map: (A, B, C, D, E, F, G, H, I) -> J): Eval<J>
fun <A, B, C, D, E, F, G, H, I, J, K> Eval<A>.zip(    b: Eval<B>,     c: Eval<C>,     d: Eval<D>,     e: Eval<E>,     f: Eval<F>,     g: Eval<G>,     h: Eval<H>,     i: Eval<I>,     j: Eval<J>,     map: (A, B, C, D, E, F, G, H, I, J) -> K): Eval<K>