Modifier and Type | Method and Description |
---|---|
<B> Maybe<B> |
Maybe.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,Maybe<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> Try<B> |
Try.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,Try<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<C> These<A,C> |
These.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,These<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> Either<L,B> |
Either.trampolineM(Fn1<? super R,? extends MonadRec<RecursiveResult<R,B>,Either<L,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
<C> Choice2<A,C> |
Choice2.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,Choice2<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<D> Choice3<A,B,D> |
Choice3.trampolineM(Fn1<? super C,? extends MonadRec<RecursiveResult<C,D>,Choice3<A,B,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<E> Choice4<A,B,C,E> |
Choice4.trampolineM(Fn1<? super D,? extends MonadRec<RecursiveResult<D,E>,Choice4<A,B,C,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<F> Choice5<A,B,C,D,F> |
Choice5.trampolineM(Fn1<? super E,? extends MonadRec<RecursiveResult<E,F>,Choice5<A,B,C,D,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<G> Choice6<A,B,C,D,E,G> |
Choice6.trampolineM(Fn1<? super F,? extends MonadRec<RecursiveResult<F,G>,Choice6<A,B,C,D,E,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<H> Choice7<A,B,C,D,E,F,H> |
Choice7.trampolineM(Fn1<? super G,? extends MonadRec<RecursiveResult<G,H>,Choice7<A,B,C,D,E,F,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<I> Choice8<A,B,C,D,E,F,G,I> |
Choice8.trampolineM(Fn1<? super H,? extends MonadRec<RecursiveResult<H,I>,Choice8<A,B,C,D,E,F,G,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
<_1Prime> SingletonHList<_1Prime> |
SingletonHList.trampolineM(Fn1<? super _1,? extends MonadRec<RecursiveResult<_1,_1Prime>,SingletonHList<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_2Prime> Tuple2<_1,_2Prime> |
Tuple2.trampolineM(Fn1<? super _2,? extends MonadRec<RecursiveResult<_2,_2Prime>,Tuple2<_1,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_3Prime> Tuple3<_1,_2,_3Prime> |
Tuple3.trampolineM(Fn1<? super _3,? extends MonadRec<RecursiveResult<_3,_3Prime>,Tuple3<_1,_2,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_4Prime> Tuple4<_1,_2,_3,_4Prime> |
Tuple4.trampolineM(Fn1<? super _4,? extends MonadRec<RecursiveResult<_4,_4Prime>,Tuple4<_1,_2,_3,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_5Prime> Tuple5<_1,_2,_3,_4,_5Prime> |
Tuple5.trampolineM(Fn1<? super _5,? extends MonadRec<RecursiveResult<_5,_5Prime>,Tuple5<_1,_2,_3,_4,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_6Prime> Tuple6<_1,_2,_3,_4,_5,_6Prime> |
Tuple6.trampolineM(Fn1<? super _6,? extends MonadRec<RecursiveResult<_6,_6Prime>,Tuple6<_1,_2,_3,_4,_5,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_7Prime> Tuple7<_1,_2,_3,_4,_5,_6,_7Prime> |
Tuple7.trampolineM(Fn1<? super _7,? extends MonadRec<RecursiveResult<_7,_7Prime>,Tuple7<_1,_2,_3,_4,_5,_6,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<_8Prime> Tuple8<_1,_2,_3,_4,_5,_6,_7,_8Prime> |
Tuple8.trampolineM(Fn1<? super _8,? extends MonadRec<RecursiveResult<_8,_8Prime>,Tuple8<_1,_2,_3,_4,_5,_6,_7,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
default <C> Fn1<A,C> |
Fn1.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,Fn1<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
<C,App extends Applicative<?,App>,TravB extends Traversable<C,RecursiveResult<A,?>>,AppTrav extends Applicative<TravB,App>> |
RecursiveResult.traverse(Fn1<? super B,? extends Applicative<C,App>> fn,
Fn1<? super TravB,? extends AppTrav> pure)
Apply
fn to each element of this traversable from left to right, and collapse the results into
a single resulting applicative, potentially with the assistance of the applicative's pure function. |
Modifier and Type | Method and Description |
---|---|
<C,D> RecursiveResult<C,D> |
RecursiveResult.biMap(Fn1<? super A,? extends C> lFn,
Fn1<? super B,? extends D> rFn)
Dually map covariantly over both the left and right parameters.
|
<C> RecursiveResult<C,B> |
RecursiveResult.biMapL(Fn1<? super A,? extends C> fn)
Covariantly map over the left parameter.
|
<C> RecursiveResult<A,C> |
RecursiveResult.biMapR(Fn1<? super B,? extends C> fn)
Covariantly map over the right parameter.
|
<C> RecursiveResult<A,C> |
RecursiveResult.discardL(Applicative<C,RecursiveResult<A,?>> appB)
Sequence both this
Applicative and appB , discarding this Applicative's
result and returning appB . |
<C> RecursiveResult<A,B> |
RecursiveResult.discardR(Applicative<C,RecursiveResult<A,?>> appB)
Sequence both this
Applicative and appB , discarding appB's result and
returning this Applicative . |
<C> RecursiveResult<A,C> |
RecursiveResult.flatMap(Fn1<? super B,? extends Monad<C,RecursiveResult<A,?>>> f)
Chain dependent computations that may continue or short-circuit based on previous results.
|
<C> RecursiveResult<A,C> |
RecursiveResult.fmap(Fn1<? super B,? extends C> fn)
Covariantly transmute this functor's parameter using the given mapping function.
|
RecursiveResult<B,A> |
RecursiveResult.invert()
Swap the type parameters.
|
<C> RecursiveResult<A,C> |
RecursiveResult.pure(C c)
Lift the value
b into this applicative functor. |
static <A,B> RecursiveResult<A,B> |
RecursiveResult.recurse(A a)
Static factory method for creating a "recurse" value.
|
static <A,B> RecursiveResult<A,B> |
RecursiveResult.terminate(B b)
Static factory method for creating a "terminate" value.
|
<C> RecursiveResult<A,C> |
RecursiveResult.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,RecursiveResult<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<C> RecursiveResult<A,C> |
RecursiveResult.zip(Applicative<Fn1<? super B,? extends C>,RecursiveResult<A,?>> appFn)
Given another instance of this applicative over a mapping function, "zip" the two instances together using
whatever application semantics the current applicative supports.
|
Modifier and Type | Method and Description |
---|---|
static <A> Pure<RecursiveResult<A,?>> |
RecursiveResult.pureRecursiveResult()
The canonical
Pure instance for RecursiveResult . |
Modifier and Type | Method and Description |
---|---|
B |
Trampoline.checkedApply(Fn1<? super A,? extends RecursiveResult<A,B>> fn,
A a) |
<C> RecursiveResult<A,C> |
RecursiveResult.discardL(Applicative<C,RecursiveResult<A,?>> appB)
Sequence both this
Applicative and appB , discarding this Applicative's
result and returning appB . |
<C> RecursiveResult<A,B> |
RecursiveResult.discardR(Applicative<C,RecursiveResult<A,?>> appB)
Sequence both this
Applicative and appB , discarding appB's result and
returning this Applicative . |
<C> RecursiveResult<A,C> |
RecursiveResult.flatMap(Fn1<? super B,? extends Monad<C,RecursiveResult<A,?>>> f)
Chain dependent computations that may continue or short-circuit based on previous results.
|
static <A,B> Fn1<A,B> |
Trampoline.trampoline(Fn1<? super A,? extends RecursiveResult<A,B>> fn) |
static <A,B> B |
Trampoline.trampoline(Fn1<? super A,? extends RecursiveResult<A,B>> fn,
A a) |
<C> RecursiveResult<A,C> |
RecursiveResult.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,RecursiveResult<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<C> RecursiveResult<A,C> |
RecursiveResult.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,RecursiveResult<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<C> RecursiveResult<A,C> |
RecursiveResult.zip(Applicative<Fn1<? super B,? extends C>,RecursiveResult<A,?>> appFn)
Given another instance of this applicative over a mapping function, "zip" the two instances together using
whatever application semantics the current applicative supports.
|
Modifier and Type | Method and Description |
---|---|
<B> Identity<B> |
Identity.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,Identity<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> Lazy<B> |
Lazy.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,Lazy<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> State<S,B> |
State.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,State<S,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> Writer<W,B> |
Writer.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,Writer<W,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<C> Const<A,C> |
Const.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,Const<A,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<C> Tagged<S,C> |
Tagged.trampolineM(Fn1<? super B,? extends MonadRec<RecursiveResult<B,C>,Tagged<S,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<U> Market<A,B,S,U> |
Market.trampolineM(Fn1<? super T,? extends MonadRec<RecursiveResult<T,U>,Market<A,B,S,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Constructor and Description |
---|
TrampoliningIterator(Fn1<? super A,? extends Iterable<RecursiveResult<A,B>>> fn,
A a) |
Modifier and Type | Method and Description |
---|---|
<B> IO<B> |
IO.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,IO<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
<B> MonadRec<B,M> |
MonadRec.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,M>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> SafeT<M,B> |
SafeT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,SafeT<M,?>>> bounce)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
<B> IdentityT<M,B> |
IdentityT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,IdentityT<M,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> LazyT<M,B> |
LazyT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,LazyT<M,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> MaybeT<M,B> |
MaybeT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,MaybeT<M,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> ReaderT<R,M,B> |
ReaderT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,ReaderT<R,M,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> StateT<S,M,B> |
StateT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,StateT<S,M,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<B> WriterT<W,M,B> |
WriterT.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,WriterT<W,M,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
<R2> EitherT<M,L,R2> |
EitherT.trampolineM(Fn1<? super R,? extends MonadRec<RecursiveResult<R,R2>,EitherT<M,L,?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
default <U> Iso<S,U,A,B> |
Iso.trampolineM(Fn1<? super T,? extends MonadRec<RecursiveResult<T,U>,Iso<S,?,A,B>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
default <U> Lens<S,U,A,B> |
Lens.trampolineM(Fn1<? super T,? extends MonadRec<RecursiveResult<T,U>,Lens<S,?,A,B>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
default <U> Prism<S,U,A,B> |
Prism.trampolineM(Fn1<? super T,? extends MonadRec<RecursiveResult<T,U>,Prism<S,?,A,B>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |
Modifier and Type | Method and Description |
---|---|
<B> LambdaIterable<B> |
LambdaIterable.trampolineM(Fn1<? super A,? extends MonadRec<RecursiveResult<A,B>,LambdaIterable<?>>> fn)
Given some operation yielding a
RecursiveResult inside this MonadRec , internally trampoline the
operation until it yields a termination instruction. |