llvm-extra-0.13: 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 qualified LLVM.Extra.Tuple as Tuple
left :: (Tuple.Undefined b) => a -> Either.T a b
left = Either.left Tuple.undef
right :: (Tuple.Undefined a) => b -> Either.T a b
right = Either.right Tuple.undef