Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Condensed output of Data::Dumper used on DateTime

by andreas1234567 (Vicar)
on Feb 28, 2012 at 22:26 UTC ( #956785=note: print w/replies, xml ) Need Help??


in reply to Condensed output of Data::Dumper used on DateTime

A complete working sample using Data::Dumper where an object having a DateTime reference can be printed in short and long versions depending on $Data::Dumper::Freezer:
# Foo.pm package Foo; use strict; use warnings; use DateTime; sub new { my $class = shift; my $self = { _timevalue => DateTime->now, }; bless( $self, $class ); return $self; } # Modify _timevalue and return blessed reference sub _dumper_hook { $_[0] = bless { %{ $_[0] }, _timevalue => $_[0]->{_timevalue}->ymd . q{ } . $_[0]->{_timevalue}->hms, }, ref( $_[0] ); } 1; __END__
Test:
# Foo.t: use strict; use warnings; use Data::Dumper; use Test::More; plan tests => 2; use Foo; my $f = Foo::->new; { local $Data::Dumper::Freezer = '_dumper_hook'; like( Dumper($f), qr/\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}/, q{prints short version} ); } unlike( Dumper($f), qr/\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}/, q{prints long version} ); __END__
Run:
$ perl Foo.t 1..2 ok 1 - prints short version ok 2 - prints long version $
--
No matter how great and destructive your problems may seem now, remember, you've probably only seen the tip of them. [1]

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://956785]
help
Chatterbox?
[holli]: "three little words", you mean
[ambrus]: Some of them are rather embarrassing historical misfeatures. One I partly worked around right now as I told him.
[holli]: `?
[choroba]: yes
[holli]: yes, that's a great one. it's one the yapc::na channel for quite a while now
[holli]: 'on
[choroba]: there was a slightly improved version in Amterdam
[choroba]: s/mte/mste/
[holli]: meh, i never get used to this keyboard
[holli]: i didnt pay attention when i bought it. it's one of those where backspace is just one unit wide

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (10)
As of 2017-11-21 13:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:













    Results (302 votes). Check out past polls.

    Notices?