--- nfo/perl/libs/Data/Mungle/Transform/Encode.pm 2002/12/05 13:57:22 1.2 +++ nfo/perl/libs/Data/Mungle/Transform/Encode.pm 2003/02/20 20:48:36 1.3 @@ -1,19 +1,20 @@ -############################################## -# -# $Id: Encode.pm,v 1.2 2002/12/05 13:57:22 joko Exp $ -# -# $Log: Encode.pm,v $ -# Revision 1.2 2002/12/05 13:57:22 joko -# + now able to export 'scalar2utf8' -# + comments -# -# Revision 1.1 2002/11/29 04:49:20 joko -# + initial check-in -# -# Revision 1.1 2002/10/10 03:26:00 cvsjoko -# + new -# -############################################## +## ------------------------------------------------------------------------- +## $Id: Encode.pm,v 1.3 2003/02/20 20:48:36 joko Exp $ +## ------------------------------------------------------------------------- +## $Log: Encode.pm,v $ +## Revision 1.3 2003/02/20 20:48:36 joko +## renamed methods +## +## Revision 1.2 2002/12/05 13:57:22 joko +## + now able to export 'scalar2utf8' +## + comments +## +## Revision 1.1 2002/11/29 04:49:20 joko +## + initial check-in +## +## Revision 1.1 2002/10/10 03:26:00 cvsjoko +## + new +## ------------------------------------------------------------------------- package Data::Transform::Encode; @@ -23,34 +24,35 @@ require Exporter; our @ISA = qw( Exporter ); -our @EXPORT_OK = qw( &var2utf8 &var_utf2iso &scalar2utf8 ); +our @EXPORT_OK = qw( &latin_to_utf8 &latin_to_utf8_scalar &utf8_to_latin &utf8_to_latin_scalar ); + use Unicode::String qw(utf8 latin1); # TODO: refactor using Greg London's "Iterate" from CPAN -sub var2utf8 { +sub latin_to_utf8 { my $vref = shift; if (ref $vref eq 'HASH') { foreach (keys %{$vref}) { if ((ref $vref->{$_}) =~ m/ARRAY|HASH/) { - var2utf8($vref->{$_}); + latin_to_utf8($vref->{$_}); } else { - $vref->{$_} = scalar2utf8($vref->{$_}); + $vref->{$_} = latin_to_utf8_scalar($vref->{$_}); } } } elsif (ref $vref eq 'ARRAY') { foreach (@{$vref}) { if (ref $_ ne 'SCALAR') { - var2utf8($_); + latin_to_utf8($_); } else { - $_ = scalar2utf8($_); + $_ = latin_to_utf8_scalar($_); } } } } -sub scalar2utf8 { +sub latin_to_utf8_scalar { my $scalar = shift; if ($scalar) { my $u = latin1($scalar); @@ -59,29 +61,29 @@ } # TODO: refactor using Greg London's "Iterate" from CPAN -sub var_utf2iso { +sub utf8_to_latin { my $vref = shift; if (ref $vref eq 'HASH') { foreach (keys %{$vref}) { if ((ref $vref->{$_}) =~ m/ARRAY|HASH/) { - var_utf2iso($vref->{$_}); + utf8_to_latin($vref->{$_}); } else { - $vref->{$_} = scalar2iso($vref->{$_}); + $vref->{$_} = utf8_to_latin_scalar($vref->{$_}); } } } elsif (ref $vref eq 'ARRAY') { foreach (@{$vref}) { if (ref $_ ne 'SCALAR') { - var_utf2iso($_); + utf8_to_latin($_); } else { - $_ = scalar2iso($_); + $_ = utf8_to_latin_scalar($_); } } } } -sub scalar2iso { +sub utf8_to_latin_scalar { my $scalar = shift; if ($scalar) { my $u = utf8($scalar); @@ -90,3 +92,4 @@ } 1; +__END__