Sometime ago I've stumped in a problem that Data::Dumper doesn't show cyrillic symbols correctly, so I write my own dumper:
use Scalar::Util qw/blessed/; use Data::Dumper; sub pretty { my $self = shift; my $structure = shift; my $depth = shift; $depth = 0 if not defined $depth; $depth += 2; my $string; if (blessed($structure)) { return Dumper($structure); } if (ref $structure eq ref {} ) { # HASH my @arr; foreach my $el (sort keys %{ $structure }) { push @arr, " "x$depth . $el ." => ". $self->pretty($$struc +ture{$el},$depth); } $string .= "HASH { \n" .join(",\n",@arr,undef); $string .= " "x($depth-2) ."}"; } elsif (ref $structure eq ref [] ) { # ARRAY my @arr; foreach my $el ( @{ $structure }) { push @arr, " "x$depth . $self->pretty($el,$depth); } $string .= "ARRAY [ \n" .join(",\n",@arr,undef); $string .= " "x($depth-2) ."]"; } else { $string .= "'".$structure."'"; } return $string; }
As you can see, I've let Dumper deal with blessed structures, while hashes and arrays printing is done in my way.
In reply to Re: Data::Dumper: What the Cabal doesn't want you to know.
by alexander_lunev
in thread Data::Dumper: What the Cabal doesn't want you to know.
by Cow1337killr
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |