Copyright | (c) The University of Glasgow 2001 |
---|---|
License | (c) The University of Glasgow 2001 |
Maintainer | libraries@haskell.org |
Stability | stable |
Portability | portable |
Safe Haskell | Trustworthy |
The Maybe type, and associated operations.
Documentation
The Maybe
type encapsulates an optional value. A value of type
either contains a value of type Maybe
aa
(represented as
),
or it is empty (represented as Just
aNothing
). Using Maybe
is a good way to
deal with errors or exceptional cases without resorting to drastic
measures such as error
.
The Maybe
type is also a monad. It is a simple kind of error
monad, where all errors are represented by Nothing
. A richer
error monad can be built using the Either
type.
Monad Maybe | |
Functor Maybe | |
MonadFix Maybe | |
MonadPlus Maybe | |
Applicative Maybe | |
Foldable Maybe | |
Traversable Maybe | |
Generic1 Maybe | |
Typeable1 Maybe | |
Alternative Maybe | |
Eq a => Eq (Maybe a) | |
Data a => Data (Maybe a) | |
Ord a => Ord (Maybe a) | |
Read a => Read (Maybe a) | |
Show a => Show (Maybe a) | |
Generic (Maybe a) | |
Monoid a => Monoid (Maybe a) | Lift a semigroup into |
Typeable (* -> *) Maybe |
listToMaybe :: [a] -> Maybe aSource
The listToMaybe
function returns Nothing
on an empty list
or
where Just
aa
is the first element of the list.
maybeToList :: Maybe a -> [a]Source
The maybeToList
function returns an empty list when given
Nothing
or a singleton list when not given Nothing
.