| base-4.2.0.2: Basic libraries | Contents | Index

Data.Functor

Portability | portable
Stability | provisional
Maintainer | libraries@haskell.org

Description
Functors: uniform action over a parameterized type, generalizing the map function on lists.
Synopsis

class Functor f where

fmap :: (a -> b) -> f a -> f b
(<$) :: a -> f b -> f a

(<$>) :: Functor f => (a -> b) -> f a -> f b

Documentation
class Functor f where

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 defined in the Prelude satisfy these laws.

Methods

fmap :: (a -> b) -> f a -> f b
(<$) :: a -> f b -> f a
Replace all locations in the input with the same value. The default definition is ``fmap` . `const``, but this may be overridden with a more efficient version.

Instances

Functor []
Functor IO
Functor [::]
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)
Monad m => Functor (WrappedMonad m)
Functor (Const m)
Functor (StateR s)
Functor (StateL s)
Functor (ST s)
Arrow a => Functor (WrappedArrow a b)

(<$>) :: Functor f => (a -> b) -> f a -> f b
An infix synonym for `fmap`.
Produced by Haddock version 2.6.1