ネストしたリファレンス内の文字列 (utf8, not flagged) を一括で utf8 flagged にしたかった。
Unicode::RecursiveDowngrade を使えば出来るのだけど、upgrade するのに名前が downgrade ってなんか嫌だったのでついカッとなって作った。
package Unicode::RecursiveUpgrade; use base qw/ Unicode::RecursiveDowngrade /; use Encode; sub new { my $class = shift; my $self = $class->SUPER::new(@_); $self->filter( \&Encode::decode_utf8 ); $self; } sub upgrade { shift->downgrade(@_); } 1;
CPAN には上げません……