darcs-2.16.1: a distributed, interactive, smart revision control system

Safe HaskellNone
LanguageHaskell2010

Darcs.Patch.MonadProgress

Synopsis

Documentation

class Monad m => MonadProgress m where Source #

Methods

runProgressActions :: String -> [ProgressAction m ()] -> m () Source #

run a list of ProgressActions. In some monads (typically IO-based ones), the progress and error messages will be used. In others they will be ignored and just the actions will be run.

data ProgressAction m a Source #

a monadic action, annotated with a progress message that could be printed out while running the action, and a message that could be printed out on error. Actually printing out these messages is optional to allow non-IO monads to just run the action.

Constructors

ProgressAction 

Fields

silentlyRunProgressActions :: Monad m => String -> [ProgressAction m ()] -> m () Source #

run a list of ProgressActions without any feedback messages