Next: , Previous: , Up: mpg-bpr   [Contents][Index]


11.3.161 print_coverage/[0,1]   development

Synopsis

print_coverage   since release 4.2

Prints the coverage data accumulated so far, to the current output stream, in a hierarchical format.

print_coverage(+Data)   since release 4.2

Prints the coverage data Data, to the current output stream, in a hierarchical format. Data should be of type list of coverage_pair; see coverage_data/1.

Arguments

Data

list of coverage_pair

Description

The output is formatted hierarchically into blocks of lines, one block per source file. A typical block looks like:

/home/matsc/tmp/primes.pl
    user:integers/3
        clause 1
           5:        100
           8:         99
        clause 2
           9:          1
    user:primes/2
        clause 1
           1:          1
           2:          1
           3:         *1
    user:remove/3
        clause 1
          16:        436
        clause 2
          17:        411
          20:       *337
        clause 3
          21:         74
          22:        *74
    user:sift/2
        clause 1
          11:          1
        clause 2
          12:         25
          13:        *25
          14:        *25

This block lists all the coverage sites for the given file. They are distributed over 4 predicates, 8 clauses, and 16 active lines of code. The coverage site on line 8 was hit 99 times. The coverage site on line 20 was hit 337 times, making at least one nondet call. And so on.

The variant print_coverage/1 is useful e.g. if you want to somehow filter the execution coverage computed by coverage_data/1 before printing it.

Exceptions

None.

See Also

Coverage Analysis. The collected coverage information can be presented by the SICStus Prolog IDE, SPIDER (see SICStus Prolog IDE). The Emacs interface also has commands for code coverage highlighting of the current buffer (C-c C-o, or use the Prolog menu; see Usage).



Send feedback on this subject.