NAME

Devel::XDebug - eXtended Debug Dumper

VERSION

version

0.0.2.

stability

This module usually works good and is stable
(Not like the previous version! ;)).

You may use it now not fearing.

SYNOPSIS

use Devel::XDebug;

debug($style, 'REF1' => $REF1, 'REF2' => $REF2);

DESCRIPTION

The eXtended Debug Dumper makes extended reports about variables for debug usage. It also supports debug for CGI applications.

Functions

debug($style, %ddata)

Prints report for values of the hash-array '%ddata' also using keys as labels using debug style $style(look 'Styles').

Returns: 1 if successed, 0 if nothing done(when all variables are undefined) and -1 when reference error detected.

Styles

Now only 'cgi' style is supported(when before dump standard HTTP header for text/plain is printed).

All other values of '$style' are ignored.

Errors

This module can catch reference errors. That means that requests like this will be found:

use Devel::XDebug;
$val = "My value";
$ref = \$val;
$ref = \$ref; # Here is error!
debug(0, '$ref' => $ref);

If self-reference level becomes greater than value of $$Devel::XDebug::ERROR_BIGREF_LEVEL error message appends the XDebug log. Dump will be continued from the next element.

You may change the value of $Devel::XDebug::ERROR_BIGREF_LEVEL. By default it is \5.

EXAMPLE

PROGRAM

use Devel::XDebug;
%profiles = (
	P1 => [qw(func1 func2)],
	P2 => [qw(func3 func4)]
);
debug(0, '\%profiles' => \%profiles);

RESULTS

eXtended Debug Dump:

\%profiles = {"P2" => ["func3", "func4"], "P1" => ["func1", "func2"]}



eXtended Debug Dump OK.

BUGS

Please write me about them.

AUTHOR

Edward Chernenko <specpc@yandex.ru>

Copyright ©Spectrum. All rights reserved.

This software is distributed under the terms of the Artistic License <URL:http://ams.wiw.org/code/artistic.txt>.

5 POD Errors

The following errors were encountered while parsing the POD:

Around line 154:

=back without =over

Around line 174:

=back without =over

Around line 187:

=back without =over

Around line 199:

=back without =over

Around line 209:

Non-ASCII character seen before =encoding in '©Spectrum.'. Assuming CP1252