diff options
Diffstat (limited to 'Annex.hs')
-rw-r--r-- | Annex.hs | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -15,6 +15,7 @@ module Annex ( eval, getState, changeState, + withState, setFlag, setField, setOutput, @@ -214,6 +215,11 @@ changeState modifier = do mvar <- ask liftIO $ modifyMVar_ mvar $ return . modifier +withState :: (AnnexState -> (AnnexState, b)) -> Annex b +withState modifier = do + mvar <- ask + liftIO $ modifyMVar mvar $ return . modifier + {- Sets a flag to True -} setFlag :: String -> Annex () setFlag flag = changeState $ \s -> |