NAME
Data::Dumper::AutoEncode - Dump with recursive encoding
SYNOPSIS
use utf8;
use Data::Dumper::AutoEncode;
eDumper(+{ foo => 'おでん' })
DESCRIPTION
Data::Dumper::AutoEncode stringifies perl data structures including unicode string to human-readable.
example:
use utf8;
use Data::Dumper;
my $foo = +{ foo => 'おでん' };
print Dumper($foo);
It will dump like this
{ foo => "\x{304a}\x{3067}\x{3093}" }
This is not human-readable.
Data::Dumper::AutoEncode exports `eDumper` function. You can use it.
use utf8;
use Data::Dumper::AutoEncode;
my $foo = +{ foo => 'おでん' };
print eDumper($foo);
# { foo => "おでん" }
Also `Dumper` function is exported from Data::Dumper::AutoEncode. It is same as Data::Dumper::Dumper
METHOD
By default, both functions eDumper and Dumper will be exported.
- eDumper(LIST)
-
Dump with recursive encoding(default: utf8)
If you want to encode other encoding, set encoding to $Data::Dumper::AutoEncode::ENCODING.
$Data::Dumper::AutoEncode::ENCODING = 'CP932';
- Dumper(LIST)
-
Same as the
Dumper
function of Data::Dumper. However, if you specify an import option-dumper
, then theDumper
function will work as same aseDumper
function. Please seeIMPORT OPTIONS
section for more details. - encode($encoding, $stuff)
-
Just encode stuff.
IMPORT OPTIONS
You can specify an import option to override Dumper
function.
use Data::Dumper::AutoEncode '-dumper';
It means Dumper
function is overrided as same as eDumper.
GLOBAL VARIABLE OPTIONS
ENCODING : utf8
Set this option if you need another encoding;
BEFORE_HOOK / AFTER_HOOK
Set code ref for hooks which excuted around encoding
$Data::Dumper::AutoEncode::BEFORE_HOOK = sub {
my $value = $_[0]; # decoded
$value =~ s/\x{2019}/'/g;
return $value;
};
$Data::Dumper::AutoEncode::AFTER_HOOK = sub {
my $value = $_[0]; # encoded
// do something
return $value;
};
CHECK_ALREADY_ENCODED : false
If you set this option true value, check a target before encoding. And do encode in case of decoded value.
DO_NOT_PROCESS_NUMERIC_VALUE : true
By default, numeric values are ignored (do nothing).
FLAG_STR
Additional string (prefix) for encoded values.
HOW TO SET CONFIGURATION VARIABLES TO DUMP
This Data::Dumper::AutoEncode
is using Data::Dumper internally. So, you can set configuration variables to dump as the variables of Data::Dumper, like below.
use Data::Dumper::AutoEncode;
local $Data::Dumper::Indent = 2;
local $Data::Dumper::Sortkeys = 1;
local $Data::Dumper::Deparse = 1;
say eDumper($hash);
REPOSITORY
Data::Dumper::AutoEncode is hosted on github http://github.com/bayashi/Data-Dumper-AutoEncode
AUTHOR
Dai Okabayashi <bayashi@cpan.org>
SEE ALSO
THANKS
gfx
tomyhero
LICENSE
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.