hat-cover(1)
NAME
hat-cover - highlight Haskell source expressions used in a traced run
SYNOPSIS
hat-cover [OPTION]... [TRACEFILE] [SOURCEFILE]...
DESCRIPTION
Print to standard output a listing of each Haskell SOURCEFILE, highlighting all expressions for which at least one instance occurs in the
hat TRACEFILE.
The TRACEFILE may be specifed with or without a .hat extension; similarly each SOURCEFILE may be specified with or without a .hs extension.
If no SOURCEFILE is specified hat-cover lists all sources in which
there are traced expressions.
The highlighted expressions in the output are maximal expressions represented in TRACEFILE. However, case-expressions, if-expressions and
let-expressions are not included among the candidate maximal expressions. As a result, in outermost case/if/let layers each alternative,
branch or local definition is considered separately for highlighting.
However, where a case/if/let occurs as a part of a larger expression of
some other kind, any highlighting of the larger expression will also
highlight the entire case/if/let. More generally, one cannot infer
from the highlighting of an expression that every subexpression within
it was needed at some point in the traced computation. Extra detail in
coverage information can be obtained if necessary by lifting out key
subexpressions as the right-hand-sides of local definitions.
- -hion=onchars, -hioff=offchars
- options reset the character-sequence codes used to switch highlighting on and off in the output.
AUTHOR
Written by Colin Runciman.
BUGS/LIMITATIONS
Some lone-variable expressions are not candidate maximal expressions
for highlighting -- but any entire right-hand-side, or any alternative,
branch or let-body in outermost case/if/let layers, are always candidates. Some trailing brackets in expressions are not included in highlighting. Both problems are consequences of the current hat trace representation.
REPORTING BUGS
Report bugs to <hat@haskell.org>.
COPYRIGHT
Copyright © 2004 University of York.
This is free software without warranty of any kind.
SEE ALSO
- hat-cover is one of many tools in the Hat tracing system for Haskell programs. For further information about Hat see http://haskell.org/hat