module RIO.Prelude.Trace
(
trace
, traceId
, traceIO
, traceM
, traceEvent
, traceEventIO
, traceMarker
, traceMarkerIO
, traceStack
, traceShow
, traceShowId
, traceShowIO
, traceShowM
, traceShowEvent
, traceShowEventIO
, traceShowMarker
, traceShowMarkerIO
, traceShowStack
, traceDisplay
, traceDisplayId
, traceDisplayIO
, traceDisplayM
, traceDisplayEvent
, traceDisplayEventIO
, traceDisplayMarker
, traceDisplayMarkerIO
, traceDisplayStack
) where
import qualified Debug.Trace as Trace
import Control.Monad.IO.Class(MonadIO(..))
import RIO.Prelude.Display
import RIO.Text (Text)
import qualified RIO.Text as Text
{-# WARNING trace "Trace statement left in code" #-}
trace :: Text -> a -> a
trace :: forall a. Text -> a -> a
trace = forall a. String -> a -> a
Trace.trace forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceId "Trace statement left in code" #-}
traceId :: Text -> Text
traceId :: Text -> Text
traceId Text
str = forall a. String -> a -> a
Trace.trace (Text -> String
Text.unpack Text
str) Text
str
{-# WARNING traceIO "Trace statement left in code" #-}
traceIO :: MonadIO m => Text -> m ()
traceIO :: forall (m :: * -> *). MonadIO m => Text -> m ()
traceIO = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> IO ()
Trace.traceIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceM "Trace statement left in code" #-}
traceM :: Applicative f => Text -> f ()
traceM :: forall (f :: * -> *). Applicative f => Text -> f ()
traceM = forall (f :: * -> *). Applicative f => String -> f ()
Trace.traceM forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceEvent "Trace statement left in code" #-}
traceEvent :: Text -> a -> a
traceEvent :: forall a. Text -> a -> a
traceEvent = forall a. String -> a -> a
Trace.traceEvent forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceEventIO "Trace statement left in code" #-}
traceEventIO :: MonadIO m => Text -> m ()
traceEventIO :: forall (m :: * -> *). MonadIO m => Text -> m ()
traceEventIO = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> IO ()
Trace.traceEventIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceMarker "Trace statement left in code" #-}
traceMarker :: Text -> a -> a
traceMarker :: forall a. Text -> a -> a
traceMarker = forall a. String -> a -> a
Trace.traceMarker forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceMarkerIO "Trace statement left in code" #-}
traceMarkerIO :: MonadIO m => Text -> m ()
traceMarkerIO :: forall (m :: * -> *). MonadIO m => Text -> m ()
traceMarkerIO = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> IO ()
Trace.traceMarkerIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceStack "Trace statement left in code" #-}
traceStack :: Text -> a -> a
traceStack :: forall a. Text -> a -> a
traceStack = forall a. String -> a -> a
Trace.traceStack forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> String
Text.unpack
{-# WARNING traceShow "Trace statement left in code" #-}
traceShow :: Show a => a -> b -> b
traceShow :: forall a b. Show a => a -> b -> b
traceShow = forall a b. Show a => a -> b -> b
Trace.traceShow
{-# WARNING traceShowId "Trace statement left in code" #-}
traceShowId :: Show a => a -> a
traceShowId :: forall a. Show a => a -> a
traceShowId = forall a. Show a => a -> a
Trace.traceShowId
{-# WARNING traceShowIO "Trace statement left in code" #-}
traceShowIO :: (Show a, MonadIO m) => a -> m ()
traceShowIO :: forall a (m :: * -> *). (Show a, MonadIO m) => a -> m ()
traceShowIO = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> IO ()
Trace.traceIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceShowM "Trace statement left in code" #-}
traceShowM :: (Show a, Applicative f) => a -> f ()
traceShowM :: forall a (f :: * -> *). (Show a, Applicative f) => a -> f ()
traceShowM = forall (f :: * -> *). Applicative f => String -> f ()
Trace.traceM forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceShowEvent "Trace statement left in code" #-}
traceShowEvent :: Show a => a -> b -> b
traceShowEvent :: forall a b. Show a => a -> b -> b
traceShowEvent = forall a. String -> a -> a
Trace.traceEvent forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceShowEventIO "Trace statement left in code" #-}
traceShowEventIO :: (Show a, MonadIO m) => a -> m ()
traceShowEventIO :: forall a (m :: * -> *). (Show a, MonadIO m) => a -> m ()
traceShowEventIO = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> IO ()
Trace.traceEventIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceShowMarker "Trace statement left in code" #-}
traceShowMarker :: Show a => a -> b -> b
traceShowMarker :: forall a b. Show a => a -> b -> b
traceShowMarker = forall a. String -> a -> a
Trace.traceMarker forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceShowMarkerIO "Trace statement left in code" #-}
traceShowMarkerIO :: (Show a, MonadIO m) => a -> m ()
traceShowMarkerIO :: forall a (m :: * -> *). (Show a, MonadIO m) => a -> m ()
traceShowMarkerIO = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> IO ()
Trace.traceMarkerIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceShowStack "Trace statement left in code" #-}
traceShowStack :: Show a => a -> b -> b
traceShowStack :: forall a b. Show a => a -> b -> b
traceShowStack = forall a. String -> a -> a
Trace.traceStack forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Show a => a -> String
show
{-# WARNING traceDisplay "Trace statement left in code" #-}
traceDisplay :: Display a => a -> b -> b
traceDisplay :: forall a b. Display a => a -> b -> b
traceDisplay = forall a. Text -> a -> a
trace forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayId "Trace statement left in code" #-}
traceDisplayId :: Display a => a -> a
traceDisplayId :: forall a. Display a => a -> a
traceDisplayId a
x = forall a b. Display a => a -> b -> b
traceDisplay a
x a
x
{-# WARNING traceDisplayIO "Trace statement left in code" #-}
traceDisplayIO :: (Display a, MonadIO m) => a -> m ()
traceDisplayIO :: forall a (m :: * -> *). (Display a, MonadIO m) => a -> m ()
traceDisplayIO = forall (m :: * -> *). MonadIO m => Text -> m ()
traceIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayM "Trace statement left in code" #-}
traceDisplayM :: (Display a, Applicative f) => a -> f ()
traceDisplayM :: forall a (f :: * -> *). (Display a, Applicative f) => a -> f ()
traceDisplayM = forall (f :: * -> *). Applicative f => Text -> f ()
traceM forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayEvent "Trace statement left in code" #-}
traceDisplayEvent :: Display a => a -> b -> b
traceDisplayEvent :: forall a b. Display a => a -> b -> b
traceDisplayEvent = forall a. Text -> a -> a
traceEvent forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayEventIO "Trace statement left in code" #-}
traceDisplayEventIO :: (Display a, MonadIO m) => a -> m ()
traceDisplayEventIO :: forall a (m :: * -> *). (Display a, MonadIO m) => a -> m ()
traceDisplayEventIO = forall (m :: * -> *). MonadIO m => Text -> m ()
traceEventIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayMarker "Trace statement left in code" #-}
traceDisplayMarker :: Display a => a -> b -> b
traceDisplayMarker :: forall a b. Display a => a -> b -> b
traceDisplayMarker = forall a. Text -> a -> a
traceMarker forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayMarkerIO "Trace statement left in code" #-}
traceDisplayMarkerIO :: (Display a, MonadIO m) => a -> m ()
traceDisplayMarkerIO :: forall a (m :: * -> *). (Display a, MonadIO m) => a -> m ()
traceDisplayMarkerIO = forall (m :: * -> *). MonadIO m => Text -> m ()
traceMarkerIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display
{-# WARNING traceDisplayStack "Trace statement left in code" #-}
traceDisplayStack :: Display a => a -> b -> b
traceDisplayStack :: forall a b. Display a => a -> b -> b
traceDisplayStack = forall a. Text -> a -> a
traceStack forall b c a. (b -> c) -> (a -> b) -> a -> c
. Utf8Builder -> Text
utf8BuilderToText forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Display a => a -> Utf8Builder
display