Encode::Bootstring - Encode and decode utf8 into a set of basic code points
$BS = new Encode::Bootstring( BASIC => ["a".."z", "A".."Z", "0".."9"], TMAX => 53, SKEW => 78, INITIAL_BIAS => 32, TMIN => 38, DAMP => 40, DELIMITER => '_', ); $bootstring = $BS->encode($utf8); $utf8 = $BS->encode($bootstring);
Punycode is a specific use of bootstring encoding; it encodes the larger code set to preprogrammed code set suitable for DNS names, such as ASCII characters and numbers. It also ignores casing of letters.
Bootstring on the other hand is the generalised concept and allows any code set to be encoded as any other smaller code set.
All parameters are optional. Refer to RFC3492 for details of each parameter. The above parameters are suitable for encoding a variety of alphabets to ascii letters and numbers.
$encoded = $BS->encode( $raw );
Encodes raw data.
$original = $BS->decode( $encoded );
Decode bootstring encoded data.
<netcom at sauber.net>
Please report any bugs or feature requests to
bug-encode-bootstring at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Encode-Bootstring. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
You can find documentation for this module with the perldoc command.
You can also look for information at:
Adam M. Costello for punycode reference implementation, and for advice and review of this more generic module.
Copyright 2009 Soren Dossing.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.