| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Universum.Bool.Guard
Documentation
guardM :: MonadPlus m => m Bool -> m () Source #
Monadic version of guard. Occasionally useful.
Here some complex but real-life example:
@
findSomePath :: IO (Maybe FilePath)
somePath :: MaybeT IO FilePath somePath = do path <- MaybeT findSomePath guardM $ liftIO $ doesDirectoryExist path return path @
ifM :: Monad m => m Bool -> m a -> m a -> m a Source #
Monadic version of if-then-else.
>>>ifM (pure True) (putText "True text") (putText "False text")True text