llvm-extra-0.5: src/LLVM/Extra/Either.hs
{-# LANGUAGE TypeFamilies #-}
{- |
LLVM counterpart to 'Either' datatype.
-}
module LLVM.Extra.Either (
Either.T(..),
Either.run,
Either.getIsLeft,
Either.mapLeft,
Either.mapRight,
left,
right,
) where
import qualified LLVM.Extra.EitherPrivate as Either
import LLVM.Extra.Class (Undefined, undefTuple, )
left :: (Undefined b) => a -> Either.T a b
left = Either.left undefTuple
right :: (Undefined a) => b -> Either.T a b
right = Either.right undefTuple