Copyright | (c) The University of Glasgow 2001 |
---|---|

License | BSD-style (see the file libraries/base/LICENSE) |

Maintainer | libraries@haskell.org |

Stability | provisional |

Portability | portable |

Safe Haskell | Trustworthy |

Language | Haskell2010 |

Functors: uniform action over a parameterized type, generalizing the
`map`

function on lists.

# Documentation

The `Functor`

class is used for types that can be mapped over.
Instances of `Functor`

should satisfy the following laws:

fmap id == id fmap (f . g) == fmap f . fmap g

The instances of `Functor`

for lists, `Maybe`

and `IO`

satisfy these laws.

Functor [] | |

Functor IO | |

Functor Maybe | |

Functor ReadP | |

Functor ReadPrec | |

Functor STM | |

Functor Handler | |

Functor ZipList | |

Functor ArgDescr | |

Functor OptDescr | |

Functor ArgOrder | |

Functor ((->) r) | |

Functor (Either a) | |

Functor ((,) a) | |

Functor (ST s) | |

Functor (Proxy *) | |

Arrow a => Functor (ArrowMonad a) | |

Functor (ST s) | |

Monad m => Functor (WrappedMonad m) | |

Functor (Const m) | |

Arrow a => Functor (WrappedArrow a b) |