		Mail::Message::Encode 饹(?)

	XXX  Mail::Message::Decode ɬפǤʡ
	XXX FML::Encode vs Mail::Message::Encode 


[ե]
	fml-help ML's Count: 02012, 02013, 02016 ʤ


[Ȥ]

	use Mail::Message::Encode;
	my $encode  = new Mail::Message::Encode;
	my $str_euc = $encode->convert( $s, 'euc-jp' );
	my $str_euc = $encode->convert( $s, 'euc-jp', 'iso-2022-jp' );

	my $encode  = new Mail::Message::Encode;
	my $status  = $encode->convert_str_ref( \$s, 'euc-jp' );
	my $status  = $encode->convert_str_ref( \$s, 'euc-jp', 'jis' );

	my $fp = sub { ... };
	$encode->run_in_chcode( $fp, $oout, $in );

   * 4.0 ߴ
	ues Mail::Message::Encode qw(STR2EUC);
	my $euc_s = STR2EUC( $s );


[]

Τ _convert_str_ref() ˤޤȤ롣


   sub convert #  STR
   {
	my ($self, $str, $out_code, $in_code) = @_;
	_convert_str_ref(\$str, $out, $in);

        return $str;
   }


   sub convert_str_ref #  STR_REF
   {
	my ($self, $str, $out, $in) = @_;
	_convert_str_ref($str, $out, $in);
   }


   sub _convert_str_ref #  STR_REF
   {
        my ($str, $out, $in) = @_;

        # 1. ¬
        ⤷ $in ʤ  ¬    0 򤫤 

        # 2. Ѵȥ饤
        if ($in 狼ä or $in ꤵ줿) {
                $out Ѵ
                jcode, Jcode, Encode  perl Сˤä
                Ѵ򤬤Ф
                return 1 ; 
        }
        else { # principle of least surprise ?
                ʤˤ⤷ʤ str ϤΤޤ֤
        }

        return 0 ; # 
   }


   sub base64 {}
   sub quoted_printable {}

	Ȥʡ

	$x = $encode->base64($s);


[ߴȤص塢STR2XXX() ]

   STR2EUC(  $str, [$icode] )
   STR2JIS(  $str, [$icode] )
   STR2SJIS( $str, [$icode] )

 convert_str_ref  wrap 롣


[̤ʴؿ]

euc ˤƤˤ礴ˤ ŵŪʥɤ wrap 롣


# change code and do $proc
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;
}



[Mail::Message::Encode إޡ]

	Mail/Message/Decode.pm
	Mail/Message/Encode.pm
		Ϥɤ롩

	FML::Language 
	FML::Language::ISO2022JP 
		֤ϰʲ2ĤΥ饹

	FML::Language::Japanese::String
		STR2EUC()
		STR2JIS()
		STR2SJIS()


	FML::Language::Japanese::Utils
		is_iso2022jp_string()
		_look_not_iso2022jp_string()
		compare_euc_string()

	[TODO]

	Mail/ThreadTrack/Print/Utils.pm  STR2EUC 
