NAME

Data::Visitor::Encode - Encode/Decode Values In A Structure

SYNOPSIS

use Data::Visitor::Encode;

my $dev = Data::Visitor::Encode->new();
my %hash = (...); # assume data is in Perl native Unicode
$dev->encode('euc-jp', \%hash); # now strings are in euc-jp
$dev->decode('euc-jp', \%hash); # now strings are back in unicode
$dev->utf8_on(\%hash);
$dev->utf8_off(\%hash);

DESCRIPTION

Data::Visitor::Encode visits each node of a structure, and returns a new structure with each node's encoding (or similar action). If you ever wished to do a bulk encode/decode of the contents of a structure, then this module may help you.

METHODS

utf8_on

$dev->utf8_on(\%hash);
$dev->utf8_on(\@list);
$dev->utf8_on(\$scalar);
$dev->utf8_on($scalar);

Returns a structure containing nodes with utf8 flag on

utf8_off

$dev->utf8_off(\%hash);
$dev->utf8_off(\@list);
$dev->utf8_off(\$scalar);
$dev->utf8_off($scalar);

Returns a structure containing nodes with utf8 flag off

encode

$dev->encode($encoding, \%hash   [, CHECK]);
$dev->encode($encoding, \@list   [, CHECK]);
$dev->encode($encoding, \$scalar [, CHECK]);
$dev->encode($encoding, $scalar  [, CHECK]);

Returns a stricture containing nodes which are encoded in the specified encoding.

decode

$dev->decode($encoding, \%hash);
$dev->decode($encoding, \@list);
$dev->decode($encoding, \$scalar);
$dev->decode($encoding, $scalar);

Returns a stricture containing nodes which are decoded from the specified encoding.

AUTHOR

Daisuke Maki <daisuke@endeworks.jp>

SEE ALSO

Data::Visitor, Encode