@@ -6,6 +6,7 @@ module Control.Distributed.Process.Internal.StrictMVar
66 , newMVar
77 , takeMVar
88 , putMVar
9+ , readMVar
910 , withMVar
1011 , modifyMVar_
1112 , modifyMVar
@@ -21,6 +22,7 @@ import qualified Control.Concurrent.MVar as MVar
2122 , newMVar
2223 , takeMVar
2324 , putMVar
25+ , readMVar
2426 , withMVar
2527 , modifyMVar_
2628 , modifyMVar
@@ -44,6 +46,9 @@ takeMVar (StrictMVar v) = MVar.takeMVar v
4446putMVar :: StrictMVar a -> a -> IO ()
4547putMVar (StrictMVar v) x = evaluate x >> MVar.putMVar v x
4648
49+readMVar :: StrictMVar a -> IO a
50+readMVar (StrictMVar v) = MVar.readMVar v
51+
4752withMVar :: StrictMVar a -> (a -> IO b) -> IO b
4853withMVar (StrictMVar v) = MVar.withMVar v
4954