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