Provided by: libxxx-perl_0.33-1_all bug

NAME

       XXX - See Your Data in the Nude

SYNOPSIS

           use XXX;
           XXX my $dog = Dog->new({has => ['fleas', 'style']});
           my $dog = XXX Dog->new({has => ['fleas', 'style']});
           my $dog = Dog->new(XXX {has => ['fleas', 'style']});
           my $dog = Dog->new({XXX has => ['fleas', 'style']});
           my $dog = Dog->new({has => XXX ['fleas', 'style']});
           my $dog = Dog->new({has => [XXX 'fleas', 'style']});

DESCRIPTION

       XXX.pm exports a function called XXX that you can put just about anywhere
           in your Perl code to make it die with a YAML dump of the arguments to
           its right.

       The charm of XXX-debugging is that it is easy to type, rarely requires parens and stands
       out visually so that you remember to remove it.

       XXX.pm also exports WWW, YYY and ZZZ which do similar debugging things.

FUNCTIONS

       WWW WWW will warn a dump of its arguments, and then return the original arguments.  This
           means you can stick it in the middle of expressions.

           NOTE: If you use WWW with Test::More, it will "diag()" rather than "warn()".

           mnemonic: W for warn

       XXX XXX will die with a dump of its arguments.

           mnemonic: XXX == Death, Nudity

       YYY YYY will print a dump of its arguments, and then return the original arguments. This
           means you can stick it in the middle of expressions.

           NOTE: If you use YYY with Test::More, it will "note()" rather than
                 "print()".

           mnemonic: YYY == Why Why Why??? or YAML YAML YAML

       ZZZ ZZZ will Carp::confess a dump of its arguments.

           mnemonic: You should confess all your sins before you sleep. zzzzzzzz

CONFIGURATION

       By default, XXX uses YAML.pm to dump your data. You can change this like so:

           use XXX -with => 'Data::Dumper';
           use XXX -with => 'Data::Dump';
           use XXX -with => 'Data::Dump::Color';
           use XXX -with => 'YAML::XS';
           use XXX -with => 'YAML::SomeOtherYamlModule';
           use XXX -with => 'JSON::Color';
           use XXX -with => 'JSON::SomeOtherJsonModule';

       You can also use the environment variable "PERL_XXX_DUMPER" to set the module, for
       example;

           PERL_XXX_DUMPER=JSON::Color perl script.pl
           PERL_XXX_DUMPER=YAML::PP::Highlight perl script.pl

       Only modules with names beginning with 'YAML' or 'JSON', and the Data::Dumper, Data::Dump,
       and Data::Dump::Color modules are supported.

       If you need to load XXX with "require", you can set the dumper module with the
       $XXX::DumpModule global variable.

           require XXX;
           $XXX::DumpModule = 'YAML::Syck';

           XXX::XXX($variable);

STACK TRACE LEVEL

       If you call a debugging function that calls XXX for you, XXX will print the wrong file and
       line number. To force XXX to skip a package in the call stack, just define the "XXX_skip"
       constant like this:

           package MyDebugger;
           use constant XXX_skip => 1;
           sub debug {
               require XXX;
               XXX::XXX(@_);
           }

       Now calls to MyDebugger::debug will print the file name you called it from, not from
       MyDebugger itself.

AUTHOR

       Ingy döt Net <ingy@cpan.org>

COPYRIGHT AND LICENSE

       Copyright 2006-2014. Ingy döt Net.

       This program is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.

       See <http://www.perl.com/perl/misc/Artistic.html>