This module will provide a coherent API to bring together
the various JSON modules currently on CPAN. This module will
allow you to code to any JSON API and have it work regardless
of which JSON module is actually installed.
JSON::MaybeXS tries to load Cpanel::JSON::XS, and if that fails instead tries to
load JSON::PP. If neither is available, an exception will be thrown.
It then exports the encode_json and decode_json functions from the loaded
module, along with a JSON constant that returns the class name for calling new
on.
JSON::PP is a JSON::XS compatible pure-Perl module.
JSON::Tiny is a standalone adaptation of Mojo::JSON, from the Mojolicious
framework. It has been adapted as a single-source-file module of under 350 lines
of code and core-only dependencies.
Key features include relaxed JSON handling, transparent Unicode support, speed,
small memory footprint, and a minimal code base ideal for bundling or inlining.
Mojo::JSON was chosen as a model because it is robust, minimal, and well tested.
Mojo::JSON's tests were also adapted to a design free of non-core dependencies.
This module converts Perl data structures to JSON and vice versa.
Its primary goal is to be correct and its secondary goal is to be fast.
To reach the latter goal it was written in C.
As this is the n-th-something JSON module on CPAN, what was the reason
to write yet another JSON module? While it seems there are many JSON
modules, none of them correctly handle all corner cases, and in most
cases their maintainers are unresponsive, gone missing, or not listening
to bug reports for other reasons.
Perl extension interface to convert to JSON (JavaScript Object Notation).
This package contains a base64 encoder/decoder and a quoted-printable
encoder/decoder. These encoding methods are specified in RFC 2045 -
MIME (Multipurpose Internet Mail Extensions).
The base64 encoding is designed to represent arbitrary sequences of
octets in a form that need not be humanly readable. A 65-character
subset ([A-Za-z0-9+/=]) of US-ASCII is used, enabling 6 bits to be
represented per printable character.
The quoted-printable encoding is intended to represent data that
largely consists of bytes that correspond to printable characters in
the ASCII character set. Non-printable characters are represented by
a triplet consisting of the character "=" followed by two hexadecimal
digits.
The MIME::Base64 and MIME::QuotedPrint modules used to be part of
libwww-perl package. They are now distributed separately (this
package). The main improvement is that the base64 encoder/decoder is
implemented by XS functions. This makes it about 20 times faster than
the old implementation in perl.
This package contains a base32 encoder/decoder.
These encoding methods are specified in RFC 3548 -
The Base16, Base32, and Base64 Data Encodings.
The base32 encoding is designed to represent arbitrary
sequences of octets in a form that need not be humanly
readable. A 33-character subset ([A-Z2-7=]) of US-ASCII
is used, enabling 5 bits to be represented per printable
character.
Number::RecordLocator encodes integers into a 32 character "alphabet"
designed to be short and easy to read and pronounce. With a 32 bit
encoding, you can map 33.5 million unique ids into a 5 character code.
This module lets you convert numbers into strings that encode the number
using the digit set of your choice.