Module
Matryoshka.Fold
- Package
- purescript-matryoshka
- Repository
- slamdata/purescript-matryoshka
#cataM Source
cataM :: forall a m f t. Recursive t f => Monad m => Traversable f => AlgebraM m f a -> t -> m a
#gcata Source
gcata :: forall a w f t. Recursive t f => Comonad w => DistributiveLaw f w -> GAlgebra w f a -> t -> a
#gcataM Source
gcataM :: forall a m w f t. Recursive t f => Monad m => Comonad w => Traversable f => Traversable w => DistributiveLaw f w -> GAlgebraM w m f a -> t -> m a
#elgotCata Source
elgotCata :: forall a w f t. Recursive t f => Comonad w => DistributiveLaw f w -> ElgotAlgebra w f a -> t -> a
#transCata Source
transCata :: forall g u f t. Recursive t f => Corecursive u g => Transform u f g -> t -> u
#transCataT Source
transCataT :: forall f t. Recursive t f => Corecursive t f => (t -> t) -> t -> t
#transCataM Source
transCataM :: forall m g u f t. Recursive t f => Corecursive u g => Monad m => Traversable f => TransformM m u f g -> t -> m u
#transCataTM Source
transCataTM :: forall m f t. Recursive t f => Corecursive t f => Monad m => Traversable f => (t -> m t) -> t -> m t
#topDownCata Source
topDownCata :: forall a f t. Recursive t f => Corecursive t f => (a -> t -> Tuple a t) -> a -> t -> t
#topDownCataM Source
topDownCataM :: forall a m f t. Recursive t f => Corecursive t f => Monad m => Traversable f => (a -> t -> m (Tuple a t)) -> a -> t -> m t
#prepro Source
prepro :: forall a f t. Recursive t f => Corecursive t f => (f ~> f) -> Algebra f a -> t -> a
#gprepro Source
gprepro :: forall a w f t. Recursive t f => Corecursive t f => Comonad w => DistributiveLaw f w -> (f ~> f) -> GAlgebra w f a -> t -> a
#transPrepro Source
transPrepro :: forall g u f t. Recursive t f => Corecursive t f => Corecursive u g => (f ~> f) -> Transform u f g -> t -> u
#gpara Source
gpara :: forall a w f t. Recursive t f => Corecursive t f => Comonad w => DistributiveLaw f w -> GAlgebra (EnvT t w) f a -> t -> a
#transPara Source
transPara :: forall g u f t. Recursive t f => Corecursive u g => AlgebraicGTransform (Tuple t) u f g -> t -> u
#transParaT Source
transParaT :: forall f t. Recursive t f => Corecursive t f => (t -> t -> t) -> t -> t
#elgotZygo Source
elgotZygo :: forall b a f t. Recursive t f => Algebra f b -> ElgotAlgebra (Tuple b) f a -> t -> a
#gElgotZygo Source
gElgotZygo :: forall b a w f t. Recursive t f => Comonad w => Algebra f b -> DistributiveLaw f w -> ElgotAlgebra (EnvT b w) f a -> t -> a
#elgotHisto Source
elgotHisto :: forall a f t. Recursive t f => ElgotAlgebra (Cofree f) f a -> t -> a
#annotateTopDown Source
annotateTopDown :: forall a f t. Recursive t f => (a -> f t -> a) -> a -> t -> Cofree f a
#annotateTopDownM Source
annotateTopDownM :: forall a m f t. Recursive t f => Monad m => Traversable f => (a -> f t -> m a) -> a -> t -> m (Cofree f a)
#lambek Source
lambek :: forall f t. Recursive t f => Corecursive t f => t -> f t