In language dependent processes, convert the charset to machine friendly one, process something and back it to the original chaset each time. This step is widely used. So it is convenient to prepare a function to pack these steps into one function.
run_in_chcode example: sub run_in_chcode { my ($self, $proc, $s, $out_code, $in_code) = @_; my $conv_status = convert_str_ref($s, $EUC_JP, $in_code); my $proc_status = &$proc($s, @_); convert_str_ref($s, $out_code, $EUC_JP) if $conv_status && $out_code; return wantarray ? ($conv_status, $proc_status): $conv_status; }
author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.
For questions about FML, e-mail <fml-bugs@fml.org>.