Module

SSRS.Unfold

Package
purescript-ssrs
Repository
PureFunctor/purescript-ssrs

#unsafeAna Source

unsafeAna :: forall p q v. (p (Mu p) -> Result p q v (Mu p)) -> (q v (Mu p) -> v -> Result p q v (Mu p)) -> Coalgebra p v -> v -> Mu p

#ana Source

ana :: forall p q v. Dissect p q => Coalgebra p v -> v -> Mu p

#anaM Source

anaM :: forall m p q v. MonadRec m => Dissect p q => CoalgebraM m p v -> v -> m (Mu p)

#transAna Source

transAna :: forall p p' q q'. Dissect p p' => Dissect q q' => Transform (Mu p) p q -> Mu p -> Mu q

#transAnaM Source

transAnaM :: forall m p p' q q'. MonadRec m => Dissect p p' => Dissect q q' => TransformM m (Mu p) p q -> Mu p -> m (Mu q)

#transAnaT Source

transAnaT :: forall p q. Dissect p q => (Mu p -> Mu p) -> Mu p -> Mu p

#transAnaTM Source

transAnaTM :: forall m p q. MonadRec m => Coercible (m (Mu p)) (m (p (Mu p))) => Dissect p q => (Mu p -> m (Mu p)) -> Mu p -> m (Mu p)

#postpro Source

postpro :: forall p q v. Dissect p q => (p ~> p) -> Coalgebra p v -> v -> Mu p

#apo Source

apo :: forall p q v. Dissect p q => GCoalgebra (Either (Mu p)) p v -> v -> Mu p

#apoM Source

apoM :: forall m p q v. MonadRec m => Dissect p q => GCoalgebraM (Either (Mu p)) m p v -> v -> m (Mu p)

#futu Source

futu :: forall p q v. Dissect p q => GCoalgebra (Free p) p v -> v -> Mu p

#futuM Source

futuM :: forall m p q v. MonadRec m => Dissect p q => GCoalgebraM (Free p) m p v -> v -> m (Mu p)