From a0c1c8ac152493ff249d83e5e9fda048b8811549 Mon Sep 17 00:00:00 2001 From: Pierre Thierry Date: Fri, 20 Feb 2026 10:50:46 +0100 Subject: [PATCH] Add failLeft --- src/Data/Either/Extra.hs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Data/Either/Extra.hs b/src/Data/Either/Extra.hs index ca67f4e..3e7ff7c 100644 --- a/src/Data/Either/Extra.hs +++ b/src/Data/Either/Extra.hs @@ -102,3 +102,7 @@ mapLeft f = either (Left . f) Right -- > mapRight show (Right True) == Right "True" mapRight :: (b -> c) -> Either a b -> Either a c mapRight = fmap + +-- | Lift an 'Either String' to a 'MonadFail' +failLeft :: MonadFail m => Either String a -> m a +failLeft = either fail pure