{-# LANGUAGE OverloadedStrings #-}
module Data.Text.Extended where
import qualified Data.Text as T
import Niv.Logger
import System.Exit (exitFailure)
import UnliftIO
tshow :: Show a => a -> T.Text
tshow :: forall a. Show a => a -> Text
tshow = String -> Text
T.pack forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
abort :: MonadIO io => T.Text -> io a
abort :: forall (io :: * -> *) a. MonadIO io => Text -> io a
abort Text
msg = do
forall (io :: * -> *). MonadIO io => Text -> io ()
tsay forall a b. (a -> b) -> a -> b
$ [Text] -> Text
T.unwords [T
tbold forall a b. (a -> b) -> a -> b
$ T
tred Text
"FATAL:", Text
msg]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a. IO a
exitFailure