Encode::GSM0338

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
Encode::GSM0338(3)   User Contributed Perl Documentation   Encode::GSM0338(3)



NAME
       Encode::GSM0338 -- ESTI GSM 03.38 Encoding

SYNOPSIS
	 use Encode qw/encode decode/;
	 $gsm0338 = encode("gsm0338", $utf8);	 # loads Encode::GSM0338 implicitly
	 $utf8	  = decode("gsm0338", $gsm0338); # ditto

DESCRIPTION
       GSM0338 is for GSM handsets. Though it shares alphanumerals with
       ASCII, control character ranges and other parts are mapped very dif-
       ferently, mainly to store Greek characters.  There are also escape
       sequences (starting with 0x1B) to cover e.g. the Euro sign.

       This was once handled by Encode::Bytes but because of all those
       unusual specifications, Encode 2.20 has relocated the support to this
       module.

NOTES
       Unlike most other encodings,  the following aways croaks on error for
       any $chk that evaluates to true.

	 $gsm0338 = encode("gsm0338", $utf8	 $chk);
	 $utf8	  = decode("gsm0338", $gsm0338,	 $chk);

       So if you want to check the validity of the encoding, surround the
       expression with "eval {}" block as follows;

	 eval {
	   $utf8    = decode("gsm0338", $gsm0338,  $chk);
	 };
	 if ($@){
	   # handle exception here
	 }

BUGS
       ESTI GSM 03.38 Encoding itself.

       Mapping \x00 to ’@’ causes too much pain everywhere.

       Its use of \x1b (escape) is also very questionable.

       Because of those two, the code paging approach used use in ucm-based
       Encoding SOMETIMES fails so this module was written.

SEE ALSO
       Encode



perl v5.8.8			  2009-03-25		   Encode::GSM0338(3)