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

Safe HaskellNone

Darcs.Patch.MonadProgress

Synopsis

Documentation

class Monad m => MonadProgress m where

Methods

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

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

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

paAction :: m a
 
paMessage :: Doc
 
paOnError :: Doc
 

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

run a list of ProgressActions without any feedback messages