Trait/Object

matryoshka

Recursive

Related Docs: object Recursive | package matryoshka

Permalink

trait Recursive[T[_[_]]] extends Serializable

Folds for recursive data types.

Linear Supertypes
Serializable, Serializable, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Recursive
  2. Serializable
  3. Serializable
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def getClass(): Class[_]

    Permalink
    Definition Classes
    Any
  2. abstract def project[F[_]](t: T[F])(implicit arg0: Functor[F]): F[T[F]]

    Permalink

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  4. def all[F[_]](t: T[F])(p: (T[F]) ⇒ Boolean)(implicit arg0: Functor[F], arg1: Foldable[F]): Boolean

    Permalink
  5. def any[F[_]](t: T[F])(p: (T[F]) ⇒ Boolean)(implicit arg0: Functor[F], arg1: Foldable[F]): Boolean

    Permalink
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def attributeTopDown[F[_], A](t: T[F], z: A)(f: (A, F[T[F]]) ⇒ A)(implicit arg0: Functor[F]): Cofree[F, A]

    Permalink

    Attribute a tree via an algebra starting from the root.

  8. def attributeTopDownM[F[_], M[_], A](t: T[F], z: A)(f: (A, F[T[F]]) ⇒ M[A])(implicit arg0: Traverse[F], arg1: Monad[M]): M[Cofree[F, A]]

    Permalink

    Kleisli variant of attributeTopDown

  9. def cata[F[_], A](t: T[F])(f: (F[A]) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink
  10. def cataM[F[_], M[_], A](t: T[F])(f: (F[A]) ⇒ M[A])(implicit arg0: Traverse[F], arg1: Monad[M]): M[A]

    Permalink

    A Kleisli catamorphism.

  11. def children[F[_]](t: T[F])(implicit arg0: Functor[F], arg1: Foldable[F]): List[T[F]]

    Permalink
  12. def collect[F[_], B](t: T[F])(pf: PartialFunction[T[F], B])(implicit arg0: Functor[F], arg1: Foldable[F]): List[B]

    Permalink
  13. def contains[F[_]](t: T[F], c: T[F])(implicit arg0: Functor[F], arg1: Foldable[F], T: Equal[T[F]]): Boolean

    Permalink
  14. def convertTo[F[_], R[_[_]]](t: T[F])(implicit arg0: Functor[F], arg1: Corecursive[R]): R[F]

    Permalink
  15. def elgotCata[W[_], F[_], A](t: T[F])(k: DistributiveLaw[F, W], g: ElgotAlgebra[W, F, A])(implicit arg0: Comonad[W], arg1: Functor[F]): A

    Permalink

    A catamorphism generalized with a comonad outside the functor.

  16. def elgotHisto[F[_], A](t: T[F])(f: (Cofree[F, F[A]]) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink
  17. def elgotPara[F[_], A](t: T[F])(f: ((T[F], F[A])) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink
  18. def elgotZygo[F[_], A, B](t: T[F])(f: (F[B]) ⇒ B, g: ElgotAlgebra[[β](B, β), F, A])(implicit arg0: Functor[F]): A

    Permalink
  19. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  20. def foldMap[F[_], Z](t: T[F])(f: (T[F]) ⇒ Z)(implicit arg0: Functor[F], arg1: Foldable[F], arg2: Monoid[Z]): Z

    Permalink
  21. def foldMapM[F[_], M[_], Z](t: T[F])(f: (T[F]) ⇒ M[Z])(implicit arg0: Functor[F], arg1: Foldable[F], arg2: Monad[M], arg3: Monoid[Z]): M[Z]

    Permalink
  22. def gcata[W[_], F[_], A](t: T[F])(k: DistributiveLaw[F, W], g: (F[W[A]]) ⇒ A)(implicit arg0: Comonad[W], arg1: Functor[F]): A

    Permalink

    A catamorphism generalized with a comonad in inside the functor.

  23. def ghisto[F[_], H[_], A](t: T[F])(g: DistributiveLaw[F, H], f: (F[Cofree[H, A]]) ⇒ A)(implicit arg0: Functor[F], arg1: Functor[H]): A

    Permalink
  24. def gpara[F[_], W[_], A](t: T[F])(e: DistributiveLaw[F, W], f: (F[EnvT[T[F], W, A]]) ⇒ A)(implicit arg0: Functor[F], arg1: Comonad[W], T: Corecursive[T]): A

    Permalink
  25. def gprepro[F[_], W[_], A](t: T[F])(k: DistributiveLaw[F, W], e: ~>[F, F], f: (F[W[A]]) ⇒ A)(implicit arg0: Functor[F], arg1: Comonad[W], T: Corecursive[T]): A

    Permalink
  26. def gzygo[F[_], W[_], A, B](t: T[F])(f: (F[B]) ⇒ B, w: DistributiveLaw[F, W], g: (F[EnvT[B, W, A]]) ⇒ A)(implicit arg0: Functor[F], arg1: Comonad[W]): A

    Permalink
  27. def hashCode(): Int

    Permalink
    Definition Classes
    Any
  28. def histo[F[_], A](t: T[F])(f: (F[Cofree[F, A]]) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink
  29. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  30. def isLeaf[F[_]](t: T[F])(implicit arg0: Functor[F], arg1: Foldable[F]): Boolean

    Permalink
  31. def mutu[F[_], A, B](t: T[F])(f: (F[(A, B)]) ⇒ B, g: (F[(B, A)]) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink

    Mutually-recursive fold.

  32. def para[F[_], A](t: T[F])(f: (F[(T[F], A)]) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink
  33. def paraM[F[_], M[_], A](t: T[F])(f: (F[(T[F], A)]) ⇒ M[A])(implicit arg0: Traverse[F], arg1: Monad[M]): M[A]

    Permalink
  34. def paraMerga[F[_], A](t: T[F], that: T[F])(f: (T[F], T[F], Option[F[A]]) ⇒ A)(implicit arg0: Functor[F], arg1: Merge[F]): A

    Permalink

    Combines two functors that may fail to merge, also providing access to the inputs at each level.

    Combines two functors that may fail to merge, also providing access to the inputs at each level. This is akin to an Elgot, not generalized, fold.

  35. def paraZygo[F[_], A, B](t: T[F])(f: (F[(T[F], B)]) ⇒ B, g: (F[(B, A)]) ⇒ A)(implicit arg0: Functor[F], arg1: Unzip[F]): A

    Permalink
  36. def prepro[F[_], A](t: T[F])(e: ~>[F, F], f: (F[A]) ⇒ A)(implicit arg0: Functor[F], T: Corecursive[T]): A

    Permalink
  37. def toString(): String

    Permalink
    Definition Classes
    Any
  38. def topDownCataM[F[_], M[_], A](t: T[F], a: A)(f: (A, T[F]) ⇒ M[(A, T[F])])(implicit arg0: Traverse[F], arg1: Monad[M], T: Corecursive[T]): M[T[F]]

    Permalink
  39. def universe[F[_]](t: T[F])(implicit arg0: Functor[F], arg1: Foldable[F]): List[T[F]]

    Permalink
  40. def zygo[F[_], A, B](t: T[F])(f: (F[B]) ⇒ B, g: (F[(B, A)]) ⇒ A)(implicit arg0: Functor[F]): A

    Permalink

Inherited from Serializable

Inherited from Serializable

Inherited from Any

Ungrouped