packages feed

ghcid-0.1.1: src/Util.hs

module Util(outStrLn, outStr) where

import Control.Concurrent
import System.IO.Unsafe


{-# NOINLINE lock #-}
lock :: MVar ()
lock = unsafePerformIO $ newMVar ()

outStr :: String -> IO ()
outStr = withMVar lock . const . putStr

outStrLn :: String -> IO ()
outStrLn s = outStr $ s ++ "\n"