Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: use warnings and debug messages

by LanX (Saint)
on Mar 06, 2017 at 15:18 UTC ( [id://1183764]=note: print w/replies, xml ) Need Help??


in reply to use warnings and debug messages

Hi Gabor

> Do you see any problems with the suggested solutions?

Yes, if a value is undef I want to see undef in the debug output, not an empty string.

And I want to be able to distinguish the string "undef" from undef.

Consequently you should use Data::Dump which already handles those cases and more

#extended usage with names print Data::Dumper->Dump([$foo, $bar], [qw(foo *ary)]);

of course that's cumbersome, so you want to put it in a custom debug routine, like your hash syntax

But of course you might not really want to repeat the var name.

Then you can use an approach like

Data::Dumper::Lazy

use Data::Dumper::Lazy; @a = 1..5; dmp {@a};

Contrary to other solutions relying on source filter or Padwalker this will also work within string eval.

Cheers Rolf
(addicted to the Perl Programming Language and ☆☆☆☆ :)
Je suis Charlie!

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1183764]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others avoiding work at the Monastery: (3)
As of 2024-04-25 17:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found