  , swapTVar
  )

import Pregame.GhcPrim

writeTVarIO :: TVar a -> a -> IO ()
writeTVarIO tvar a = atomically (writeTVar tvar a)

modifyTVarIO :: TVar a -> (a -> a) -> IO ()
modifyTVarIO tvar f = atomically (modifyTVar tvar f)

modifyTVarIO' :: TVar a -> (a -> a) -> IO ()