module Maptrace(maptrace,ctrace) where import Debug.Trace(trace) import CmdLineEnv(argFlag) maptrace :: String -> [b] -> [b] maptrace String s = forall a b. (a -> b) -> [a] -> [b] map (\b x -> if b x forall a. Eq a => a -> a -> Bool == b x then forall a. String -> a -> a trace String s b x else forall a. HasCallStack => String -> a error String "?") ctrace :: String -> a -> a -> a ctrace String flag = if String -> Bool -> Bool argFlag String flag Bool False then \a e -> forall a. String -> a -> a trace (String flagforall a. [a] -> [a] -> [a] ++String ": "forall a. [a] -> [a] -> [a] ++forall a. Show a => a -> String show a e) else forall a b. a -> b -> a const forall a. a -> a id