Safe Haskell | Safe |
---|---|
Language | Haskell98 |
Documentation
(?->) :: Maybe a -> (a -> b) -> Maybe b infixl 6 Source #
This is an infix version of fmap
for writing select
style expressions
using test functions, that produce Maybe
s.
The precedence is chosen to be higher than '(:)', in order to allow:
alternatives default $ checkForA ?-> (\a -> f a) : checkForB ?-> (\b -> g b) : []
The operation is left associative in order to allow to write
checkForA ?-> f ?-> g
which is equivalent to
checkForA ?-> g . f
due to the functor law.
alternatives :: a -> [Maybe a] -> a Source #