Portability | portable |
---|---|

Stability | provisional |

Maintainer | libraries@haskell.org |

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, `Data.Maybe.Maybe`

and `System.IO.IO`

satisfy these laws.

Functor [] | |

Functor IO | |

Functor Maybe | |

Functor ReadP | |

Functor ReadPrec | |

Functor STM | |

Functor ZipList | |

Functor Id | |

Functor ((->) r) | |

Functor (Either a) | |

Functor ((,) a) | |

Functor (ST s) | |

Ix i => Functor (Array i) | |

Functor (ST s) | |

Monad m => Functor (WrappedMonad m) | |

Functor (Const m) | |

Functor (StateR s) | |

Functor (StateL s) | |

Arrow a => Functor (WrappedArrow a b) |