fixpoint-0.1: Data types as fixpoints
Source code
Contents
Index
Data.Fixpoint
Synopsis
class
Functor
(
Pre
t) =>
Fixpoint
t
where
data
Pre
t :: * -> *
project
:: t ->
Pre
t t
inject
::
Pre
t t -> t
cata
::
Fixpoint
t => (
Pre
t s -> s) -> t -> s
fold
::
Fixpoint
t => (
Pre
t s -> s) -> t -> s
ana
::
Fixpoint
t => (s ->
Pre
t s) -> s -> t
unfold
::
Fixpoint
t => (s ->
Pre
t s) -> s -> t
hylo
::
Fixpoint
t => (
Pre
t s -> s) -> (p ->
Pre
t p) -> p -> s
para
::
Fixpoint
t => (
Pre
t (t, s) -> s) -> t -> s
Documentation
class
Functor
(
Pre
t) =>
Fixpoint
t
where
Source
The class of data types representable by fixpoints.
Associated Types
data
Pre
t :: * -> *
Source
Methods
project
:: t ->
Pre
t t
Source
inject
::
Pre
t t -> t
Source
Instances
Fixpoint
([] a)
cata
::
Fixpoint
t => (
Pre
t s -> s) -> t -> s
Source
Catamorphism (same as
fold
)
fold
::
Fixpoint
t => (
Pre
t s -> s) -> t -> s
Source
Catamorphism (same as
cata
)
ana
::
Fixpoint
t => (s ->
Pre
t s) -> s -> t
Source
Anamorphism (same as
unfold
)
unfold
::
Fixpoint
t => (s ->
Pre
t s) -> s -> t
Source
Anamorphism (same as
ana
)
hylo
::
Fixpoint
t => (
Pre
t s -> s) -> (p ->
Pre
t p) -> p -> s
Source
Hylomorphism
para
::
Fixpoint
t => (
Pre
t (t, s) -> s) -> t -> s
Source
Paramorphism
Produced by
Haddock
version 2.3.0