File: README

package info (click to toggle)
libdevel-trace-perl 0.12-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, jessie, jessie-kfreebsd, sid, stretch, wheezy
  • size: 84 kB
  • ctags: 7
  • sloc: perl: 49; makefile: 7
file content (81 lines) | stat: -rw-r--r-- 2,077 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
NAME
    Devel::Trace - Print out each line before it is executed (like `sh -x')

SYNOPSIS
      perl -d:Trace program


DESCRIPTION
    If you run your program with `perl -d:Trace program', this module will
    print a message to standard error just before each line is executed. For
    example, if your program looks like this:

            #!/usr/bin/perl
            
            
            print "Statement 1 at line 4\n";
            print "Statement 2 at line 5\n";
            print "Call to sub x returns ", &x(), " at line 6.\n";
            
            exit 0;
            
            
            sub x {
              print "In sub x at line 12.\n";
              return 13;
            }


    Then the `Trace' output will look like this:

            >> ./test:4: print "Statement 1 at line 4\n";
            >> ./test:5: print "Statement 2 at line 5\n";
            >> ./test:6: print "Call to sub x returns ", &x(), " at line 6.\n";
            >> ./test:12:   print "In sub x at line 12.\n";
            >> ./test:13:   return 13;
            >> ./test:8: exit 0;


    This is something like the shell's `-x' option.

DETAILS
    Inside your program, you can enable and disable tracing by doing

        $Devel::Trace::TRACE = 1;   # Enable
        $Devel::Trace::TRACE = 0;   # Disable


    or

        Devel::Trace::trace('on');  # Enable
        Devel::Trace::trace('off'); # Disable


    `Devel::Trace' exports the `trace' function if you ask it to:

        import Devel::Trace 'trace';


    Then if you want you just say

        trace 'on';                 # Enable
        trace 'off';                # Disable


TODO
    *   You should be able to send the trace output to the filehandle of your
        choice.

    *   You should be able to specify the format of the output.

    *   You should be able to get the output into a string.


    We'll see.

Author
    Mark-Jason Dominus (`mjd-perl-trace+@plover.com'), Plover Systems co.

    See the `Devel::Trace.pm' Page at http://www.plover.com/~mjd/perl/Trace
    for news and upgrades.