scheme
object scheme
Type members
Classlikes
Inherited classlikes
Value members
Inherited methods
def anaM[M[_] : Monad, F[_] : Traverse, A, R](coalgebraM: CoalgebraM[M, F, A])(implicit evidence$5: Monad[M], evidence$6: Traverse[F], embed: Embed[F, R]): A => M[R]
- Inherited from:
- SchemeConvenientPorcelain
Convenience to specify the base constructor "shape" (such as Fix
or
Cofree[*[_], Int]
) for recursion.
Convenience to specify the base constructor "shape" (such as Fix
or
Cofree[*[_], Int]
) for recursion.
This helps to guide Scala's type inference so all of the type parameters for the various recursion scheme methods don't have to be provided.
- Inherited from:
- SchemeConvenientPorcelain
def gana[F[_] : Functor, A, S, R](coalgebra: GCoalgebra[F, A, S])(scatter: (F, A) => S)(implicit evidence$25: Functor[F], embed: Embed[F, R]): A => R
- Inherited from:
- SchemeGeneralizedPlumbing
def ganaM[M[_] : Monad, F[_] : Traverse, A, S, R](coalgebra: GCoalgebraM[M, F, A, S])(scatter: (F, A) => S)(implicit evidence$26: Monad[M], evidence$27: Traverse[F], embed: Embed[F, R]): A => M[R]
- Inherited from:
- SchemeGeneralizedPlumbing
def ghylo[F[_] : Functor, A, SA, SB, B](algebra: GAlgebra[F, SB, B], coalgebra: GCoalgebra[F, A, SA])(gather: (F, SB) => B, scatter: (F, A) => SA): A => B
- Inherited from:
- SchemeGeneralizedPlumbing
def ghyloM[M[_] : Monad, F[_] : Traverse, A, SA, SB, B](algebra: GAlgebraM[M, F, SB, B], coalgebra: GCoalgebraM[M, F, A, SA])(gather: (F, SB) => B, scatter: (F, A) => SA): A => M[B]
- Inherited from:
- SchemeGeneralizedPlumbing
Build a hylomorphism by recursively unfolding with coalgebra
and
refolding with algebra
.
Build a hylomorphism by recursively unfolding with coalgebra
and
refolding with algebra
.
hylo A ---------------> B | ^ co- | | algebra | | algebra | | v | F[A] ------------> F[B] map hylo
- Inherited from:
- SchemeHyloPorcelain
def hyloM[M[_] : Monad, F[_] : Traverse, A, B](algebra: AlgebraM[M, F, B], coalgebra: CoalgebraM[M, F, A]): A => M[B]
Build a monadic hylomorphism
Build a monadic hylomorphism
hyloM A ---------------> M[B] | ^ co- | | algebraM | | flatMap f | | v | M[F[A]] ---------> M[F[M[B]]] map hyloM with f: F[M[B]] -----> M[F[B]] ----------> M[B] sequence flatMap algebraM
- Inherited from:
- SchemeHyloPorcelain