public interface Trampoline<T> extends FlatMap1<Trampoline.µ,T>, Holder<T>
| Modifier and Type | Interface and Description |
|---|---|
static class |
Trampoline.µ |
static class |
Trampoline.Done<T> |
static class |
Trampoline.More<T> |
| Modifier and Type | Method and Description |
|---|---|
Trampoline<T> |
apply() |
boolean |
complete() |
static <T> Trampoline<T> |
done(T value) |
default <R> Trampoline<R> |
flatMap(Function1<T,? extends Higher1<Trampoline.µ,R>> map) |
default <V> Trampoline<V> |
flatten() |
default <R> R |
fold(Function1<Trampoline<T>,R> more,
Function1<T,R> done) |
default <R> Trampoline<R> |
map(Function1<T,R> map) |
com.github.tonivade.purefun.type.TrampolineModule |
module() |
static <T> Trampoline<T> |
more(Producer<Trampoline<T>> next) |
static <T> Trampoline<T> |
narrowK(Higher1<Trampoline.µ,T> hkt) |
default T |
run() |
Trampoline<T> apply()
boolean complete()
default <R> Trampoline<R> map(Function1<T,R> map)
map in interface Mappable<Trampoline.µ,T>default <R> Trampoline<R> flatMap(Function1<T,? extends Higher1<Trampoline.µ,R>> map)
flatMap in interface FlatMap1<Trampoline.µ,T>default <R> R fold(Function1<Trampoline<T>,R> more, Function1<T,R> done)
default T run()
default <V> Trampoline<V> flatten()
com.github.tonivade.purefun.type.TrampolineModule module()
static <T> Trampoline<T> done(T value)
static <T> Trampoline<T> more(Producer<Trampoline<T>> next)
static <T> Trampoline<T> narrowK(Higher1<Trampoline.µ,T> hkt)