| Copyright | (c) Andy Gill 2001 (c) Oregon Graduate Institute of Science and Technology 2001 | 
|---|---|
| License | BSD-style (see the file LICENSE) | 
| Maintainer | ross@soi.city.ac.uk | 
| Stability | stable | 
| Portability | portable | 
| Safe Haskell | Trustworthy | 
| Language | Haskell2010 | 
GHC.Internal.Data.Functor.Identity
Description
The identity functor and monad.
This trivial type constructor serves two purposes:
- It can be used with functions parameterized by functor or monad classes.
- It can be used as a base monad to which a series of monad
   transformers may be applied to construct a composite monad.
   Most monad transformer modules include the special case of
   applying the transformer to Identity. For example,State sis an abbreviation forStateT s.Identity
Since: base-4.8.0.0
Synopsis
- newtype Identity a = Identity {- runIdentity :: a
 
Documentation
Identity functor and monad. (a non-strict monad)
Examples
>>>fmap (+1) (Identity 0)Identity 1
>>>Identity [1, 2, 3] <> Identity [4, 5, 6]Identity [1,2,3,4,5,6]
>>> do
      x <- Identity 10
      y <- Identity (x + 5)
      pure (x + y)
Identity 25
Since: base-4.8.0.0
Constructors
| Identity | |
| Fields 
 | |