Perl6 module Uni63
Perl6 Makefile
Switch branches/tags
Latest commit b6499cb Apr 28, 2017 @cygx META.info is now META6.json
Permalink
Failed to load latest commit information.
lib use whitespace consistently Dec 4, 2015
t release v0.2.0 Dec 4, 2015
.gitignore release v0.2.0 Dec 4, 2015
.travis.yml let travis use panda Oct 31, 2015
LICENSE add meta files May 5, 2015
META6.json META.info is now META6.json Apr 27, 2017
Makefile fix `make t-xx` on windows Oct 11, 2015
README.md add travis status to README.md Oct 31, 2015

README.md

Uni63 Build Status

A Unicode encoding scheme suitable for name mangling

Synopsis

    use Uni63;

    my $enc = Uni63::enc('Leberkäse');
    my $dec = Uni63::dec($enc);

Description

The 62 alphanumeric ASCII characters encode themselves. A 63rd character _ is used to mark escape sequences.

The escape character is followed by a single digit, indicating the number of characters that encode the next Unicode codepoint. Contrary to the module name, the codepoint is encoded in base-62 with digits 0..9, a..z, A..Z.

The decoder does not validate its input:

  • An invalid character or an underscore that is not followed by a valid escape sequence will be passed through, thus re-encoding a decoded string may not round trip.

  • The numeric value of any escape sequence that follows the given scheme will be passed on to chr, even if the value lies outside the range of Unicode codepoints.

Bugs and Development

Development happens at GitHub. If you found a bug or have a feature request, use the issue tracker over there.

Copyright and License

Copyright (C) 2015 by cygx@cpan.org

Distributed under the Boost Software License, Version 1.0