X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Data%2FEither.hs;h=65b366123d04ff09e8ccca7d53cea7f0389141ba;hb=a87bf77d4a5dfaae56867a96749f204aee0192de;hp=406e7e7e3bb162dbf8be697f4b8bad69ef3391fa;hpb=d13151cc971aaa7400de7c400ad050e8f8fd7a8d;p=ghc-base.git diff --git a/Data/Either.hs b/Data/Either.hs index 406e7e7..65b3661 100644 --- a/Data/Either.hs +++ b/Data/Either.hs @@ -35,6 +35,9 @@ hold a correct value (mnemonic: \"right\" also means \"correct\"). -} data Either a b = Left a | Right b deriving (Eq, Ord ) +-- | 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@. either :: (a -> c) -> (b -> c) -> Either a b -> c either f _ (Left x) = f x either _ g (Right y) = g y