file-location-0.4.9.1: common functions that show file location information

FileLocation

Description

see Debug.FileLocation module for more definitions

Synopsis

# Documentation

Like Prelude.error, but gives the file location.

$(err "OH NO!") main:Main main.hs:4:10 OH NO! Like err, but the error message (to be appended to the location) is an argument of the generated expression. $(err) "OH NO!"
main:Main main.hs:4:10 OH NO!

Like Prelude.undefined, but gives the file location.

Uses trace to output the location (this way we still use undefined instead of calling error).

\$(undef)
main:Main main.hs:4:10 undefined
err: Prelude.undefined

Like fromJust, but also shows the file location.

Like fromRight, but also show the file location.

Like (flip (!), but also shows the file location in case the element isn't found.

Like indx, but also shows the looked-up element in case it isn't found.

debug :: Show a => a -> a Source #

A version of Debug.Trace.trace that just prints a value. This should be included in Debug.Trace

debugM :: (Monad m, Show a) => a -> m a Source #

Monadic debug - like debug, but works as a standalone line in a monad.

TODO: TH version with error loaction info

debugMsg :: Show a => String -> a -> a Source #

A version of Debug.Trace.trace that just prints a value and a message. This should be included in Debug.Trace

debugMsgIf :: Show a => String -> (a -> Bool) -> a -> a Source #

A version of Debug.Trace.trace that just prints a value and a message. This should be included in Debug.Trace

TH version of Debug.Trace.trace that just prints a value.

TH version of Debug.Trace.trace that prints a value and a message prefix.

A TH version of Debug.Trace.trace that prints location information

ltrace :: Show a => String -> a -> a Source #

Labelled trace - like strace, but with a label prepended.

ltraceM :: (Monad m, Show a) => String -> a -> m a Source #

Monadic debug - like debug, but works as a standalone line in a monad.

TODO: TH version with error loaction info

strace :: Show a => a -> a Source #

Trace (print on stderr at runtime) a showable expression like debug, but do not print "DEBUG: ".

"strace" stands for "show trace".