feed-gipeda-0.2.0.0: src/FeedGipeda/Prelude.hs
module FeedGipeda.Prelude
( logInfo
, logDebug
, logWarn
, logError
, readFileMaybe
) where
import Control.Applicative
import qualified Control.Logging as Logging
import Control.Monad.IO.Class
import qualified Data.Text as Text
import System.Directory (doesFileExist)
logInfo :: MonadIO io => String -> io ()
logInfo = liftIO . Logging.log . Text.pack
logDebug :: MonadIO io => String -> io ()
logDebug = liftIO . Logging.debug . Text.pack
logWarn :: MonadIO io => String -> io ()
logWarn = liftIO . Logging.warn . Text.pack
logError :: String -> a
logError = Logging.errorL . Text.pack
readFileMaybe :: MonadIO io => FilePath -> io (Maybe String)
readFileMaybe file = liftIO $ do
exists <- doesFileExist file
if exists
then Just <$> readFile file
else return Nothing