module ProjectM36.Trace where
import Debug.Trace (traceEventIO)
-- utility module to enable easy enabling/disabling of eventlog data

-- | Utility function for tracing with ghc-events-analyze using START and STOP markers
traceBlock :: String -> IO () -> IO ()
traceBlock :: String -> IO () -> IO ()
traceBlock String
label IO ()
m = do
  String -> IO ()
traceEventIO (String
"START " String -> String -> String
forall a. Semigroup a => a -> a -> a
<> String
label)
  IO ()
m
  String -> IO ()
traceEventIO (String
"STOP " String -> String -> String
forall a. Semigroup a => a -> a -> a
<> String
label)