from-sum

Canonical fromMaybeM and fromEitherM functions.

https://github.com/cdepillabout/from-sum

Version on this page:0.2.1.0
LTS Haskell 22.13:0.2.3.0
Stackage Nightly 2024-03-14:0.2.3.0
Latest on Hackage:0.2.3.0

See all snapshots from-sum appears in

BSD-3-Clause licensed by Dennis Gosnell
Maintained by [email protected]
This version can be pinned in stack with:from-sum-0.2.1.0@sha256:066082bd3023017326216d31f32a49a94b0cf5f2af5fba8cf5d1b9e3fb94bd9d,1146

Module documentation for 0.2.1.0

Depends on 2 packages(full list with versions):
Used by 1 package in nightly-2017-06-23(full list with versions):

Control.FromSum

Build Status Hackage Stackage LTS Stackage Nightly

This Haskell module exports the fromEitherM and fromMaybeM convenience functions.

fromMaybeM :: m a -> Maybe a -> m a

fromEitherM :: (e -> m a) -> Either e a -> m a

fromEitherM leftAction eitherValue is the same as either leftAction pure eitherValue.

fromMaybeM nothingAction maybeValue is the same as maybe nothingAction pure maybeValue.

Usage

>>> import Control.FromSum (fromEitherM, fromMaybeM)
>>> fromMaybeM [] $ Just 5
[5]
>>> fromMaybeM [] Nothing
[]
>>> fromEitherM (\s -> [length s]) $ Right 5
[5]
>>> fromEitherM (\s -> [length s]) $ Left "foo"
[3]