split BranchChange and lifted
This commit is contained in:
parent
0c584bf70d
commit
39a3adf434
5 changed files with 29 additions and 13 deletions
|
@ -7,16 +7,13 @@
|
|||
|
||||
module Assistant.BranchChange where
|
||||
|
||||
import Assistant.Common
|
||||
import Assistant.Types.BranchChange
|
||||
|
||||
import Control.Concurrent.MSampleVar
|
||||
import Common.Annex
|
||||
|
||||
newtype BranchChangeHandle = BranchChangeHandle (MSampleVar ())
|
||||
branchChanged :: Assistant ()
|
||||
branchChanged = flip writeSV () <<~ (fromBranchChangeHandle . branchChangeHandle)
|
||||
|
||||
newBranchChangeHandle :: IO BranchChangeHandle
|
||||
newBranchChangeHandle = BranchChangeHandle <$> newEmptySV
|
||||
|
||||
branchChanged :: BranchChangeHandle -> IO ()
|
||||
branchChanged (BranchChangeHandle h) = writeSV h ()
|
||||
|
||||
waitBranchChange :: BranchChangeHandle -> IO ()
|
||||
waitBranchChange (BranchChangeHandle h) = readSV h
|
||||
waitBranchChange :: Assistant ()
|
||||
waitBranchChange = readSV <<~ (fromBranchChangeHandle . branchChangeHandle)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue