intro-0.0.1.0: src/Intro/Trustworthy.hs
{-# LANGUAGE Trustworthy #-}
module Intro.Trustworthy (
module X,
trace,
traceIO,
traceM,
traceShow,
traceShowM,
traceStack,
traceStackM,
) where
import Data.DList as X (
DList,
)
import GHC.Exts as X (
IsList(Item, fromList
-- , toList
)
)
import qualified Data.Text
import qualified Debug.Trace
{-# WARNING trace "'trace' remains in code" #-}
trace :: Data.Text.Text -> a -> a
trace = Debug.Trace.trace . Data.Text.unpack
{-# WARNING traceStack "'traceStack' remains in code" #-}
traceStack :: Data.Text.Text -> a -> a
traceStack = Debug.Trace.traceStack . Data.Text.unpack
{-# WARNING traceStackM "'traceStackM' remains in code" #-}
traceStackM :: Monad m => Data.Text.Text -> m ()
traceStackM s = traceStack s $ pure ()
{-# WARNING traceShow "'traceShow' remains in code" #-}
traceShow :: Show a => a -> b -> b
traceShow = Debug.Trace.traceShow
{-# WARNING traceShowM "'traceShowM' remains in code" #-}
traceShowM :: (Show a, Monad m) => a -> m ()
traceShowM = Debug.Trace.traceShowM
{-# WARNING traceM "'traceM' remains in code" #-}
traceM :: Monad m => Data.Text.Text -> m ()
traceM = Debug.Trace.traceM . Data.Text.unpack
{-# WARNING traceIO "'traceIO' remains in code" #-}
traceIO :: Data.Text.Text -> IO ()
traceIO = Debug.Trace.traceIO . Data.Text.unpack