Data.Either

| Haskell Hierarchical Libraries (base package) | Contents | Index
Data.Either |
Portability | portable
Stability | experimental
Maintainer | libraries@haskell.org
Description
The Either type, and associated operations.
Synopsis
data Either a b
= Left a
| Right b
either :: (a -> c) -> (b -> c) -> Either a b -> c
Documentation
data Either a b
The `Either` type represents values with two possibilities: a value of type ``Either` a b` is either ``Left` a` or ``Right` b`. The `Either` type is sometimes used to represent a value which is either correct or an error; by convention, the `Left` constructor is used to hold an error value and the `Right` constructor is used to hold a correct value (mnemonic: "right" also means "correct").
Constructors
Left a |
Right b |
Instances
Functor (Either e)
Error e => Monad (Either e)
Error e => MonadPlus (Either e)
Error e => MonadFix (Either e)
Error e => MonadError e (Either e)
(Eq a, Eq b) => Eq (Either a b)
(Ord a, Ord b) => Ord (Either a b)
(Data a, Data b) => Data (Either a b)
(Typeable a, Typeable b) => Typeable (Either a b)
(Read a, Read b) => Read (Either a b)
(Show a, Show b) => Show (Either a b)
either :: (a -> c) -> (b -> c) -> Either a b -> c
Case analysis for the `Either` type. If the value is ``Left` a`, apply the first function to `a`; if it is ``Right` b`, apply the second function to `b`.
Produced by Haddock version 0.6