module CabalGild.Class.MonadLog where
class (Monad m) => MonadLog m where
log :: String -> m ()
instance MonadLog IO where
log :: String -> IO ()
log = String -> IO ()
putStr
logLn :: (MonadLog m) => String -> m ()
logLn :: forall (m :: * -> *). MonadLog m => String -> m ()
logLn = String -> m ()
forall (m :: * -> *). MonadLog m => String -> m ()
CabalGild.Class.MonadLog.log (String -> m ()) -> (String -> String) -> String -> m ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (String -> String -> String
forall a. Semigroup a => a -> a -> a
<> String
"\n")