JE::String - JavaScript string value
use JE;
use JE::String;
$j = JE->new;
$js_str = new JE::String $j, "etetfyoyfoht";
$perl_str = $js_str->value;
$js_str->to_object; # retuns a new JE::String::Object;
This class implements JavaScript string values for JE. The difference in use
between this and JE::Object::String is that that module implements string
objects, while this module implements the primitive values.
The stringification operator is overloaded.
There are two exportable functions,
"surrogify" and
"desurrogify", which convert characters
outside the BMP into surrogate pairs, and convert surrogate pairs in the
string input argument into the characters they represent, respectively, and
return the modified string. E.g.:
use JE::String qw 'desurrogify surrogify';
{
no warnings 'utf8';
$str = "\x{d834}\x{dd2b}";
}
$str = desurrogify $str; # $str now contains "\x{1d12b}" (double flat)
$str = surrogify $str; # back to "\x{d834}\x{dd2b}"
- JE
- JE::Types
- JE::Object::String