summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mailaids.cabal1
-rw-r--r--src/Data/MIME/Extended.hs8
2 files changed, 5 insertions, 4 deletions
diff --git a/mailaids.cabal b/mailaids.cabal
index 9c501d5..46f2c51 100644
--- a/mailaids.cabal
+++ b/mailaids.cabal
@@ -17,6 +17,7 @@ executable mailaid
base,
bytestring,
case-insensitive,
+ either,
lens,
optparse-applicative,
purebred-email >= 0.5,
diff --git a/src/Data/MIME/Extended.hs b/src/Data/MIME/Extended.hs
index 773d0b7..74ceaf5 100644
--- a/src/Data/MIME/Extended.hs
+++ b/src/Data/MIME/Extended.hs
@@ -13,6 +13,7 @@ import Data.ByteString (ByteString)
import Data.ByteString.Extended ()
import Data.CaseInsensitive (CI)
import Data.Either (fromRight)
+import Data.Either.Combinators (maybeToRight)
import Data.List.NonEmpty (NonEmpty)
import Data.MIME
import Data.MIME.EncodedWord
@@ -117,9 +118,8 @@ makeMultipart h =
"related" -> Related
<$> ( getRequiredParam "type" ct
>>= \s ->
- maybe
- (Left $ InvalidParameterValue "type" s)
- Right
+ maybeToRight
+ (InvalidParameterValue "type" s)
(preview (parsed parseContentType) s)
)
<*> getOptionalParam "start" ct
@@ -134,7 +134,7 @@ makeMultipart h =
getRequiredParam :: HasParameters s =>
CI ByteString -> s -> Either MIMEParseError ByteString
getRequiredParam k =
- maybe (Left $ RequiredParameterMissing k) Right . preview (rawParameter k)
+ maybeToRight (RequiredParameterMissing k) . preview (rawParameter k)
getOptionalParam :: HasParameters s =>
CI ByteString -> s -> Either a (Maybe ByteString)