License | BSD-style (see the file LICENSE) |
---|---|

Maintainer | sjoerd@w3future.com |

Stability | experimental |

Portability | non-portable |

Safe Haskell | None |

Language | Haskell98 |

- fmapADT :: (ADT1 t, Constraints t Functor) => (a -> b) -> t a -> t b
- foldMapADT :: (ADT1 t, Constraints t Foldable, Monoid m) => (a -> m) -> t a -> m
- traverseADT :: (ADT1 t, Constraints t Traversable, Applicative f) => (a -> f b) -> t a -> f (t b)
- pureADT :: (ADT1Record t, Constraints t Applicative) => a -> t a
- apADT :: (ADT1Record t, Constraints t Applicative) => t (a -> b) -> t a -> t b
- bindADT :: (ADT1Record t, Constraints t Monad) => t a -> (a -> t b) -> t b
- mfixADT :: (ADT1Record t, Constraints t MonadFix) => (a -> t a) -> t a

# For all instances

fmapADT :: (ADT1 t, Constraints t Functor) => (a -> b) -> t a -> t b Source

foldMapADT :: (ADT1 t, Constraints t Foldable, Monoid m) => (a -> m) -> t a -> m Source

traverseADT :: (ADT1 t, Constraints t Traversable, Applicative f) => (a -> f b) -> t a -> f (t b) Source

# For datatypes with one constructor

pureADT :: (ADT1Record t, Constraints t Applicative) => a -> t a Source

apADT :: (ADT1Record t, Constraints t Applicative) => t (a -> b) -> t a -> t b Source

bindADT :: (ADT1Record t, Constraints t Monad) => t a -> (a -> t b) -> t b Source

mfixADT :: (ADT1Record t, Constraints t MonadFix) => (a -> t a) -> t a Source