NAME JSON::PP - An experimental JSON::XS compatible Pure Perl module.

SYNOPSIS

use JSON::PP;

$obj       = from_json($json_text);
$json_text = to_json($obj);

# or

$obj       = jsonToObj($json_text);
$json_text = objToJson($obj);

$json = new JSON;
$json_text = $json->ascii->pretty($obj);

DESCRIPTION

This module is JSON::XS compatible Pure Perl module. It requires Perl 5.8.

The global variables ($JSON::*) were abolished.

JSON::PP will be renamed JSON (JSON-2.0).

Many things including error handling are learned from JSON::XS.

FEATURES

  • perhaps correct unicode handling?

    This module knows how to handle Unicode (perhaps), but not yet documents how and when it does so.

  • round-trip integrity

    This module solved the problem pointed out by XS using B module.

  • strict checking of JSON correctness

    I want to bring close to XS. How do you want to carry out?

  • slow

    Compared to other JSON modules, this module does not compare favourably in terms of speed. Very slowly!

  • simple to use

    This module became very simple. Since its interface were anyway made the same as JSON::XS.

  • reasonably versatile output formats

    See to JSON::XS.

FUNCTIONS

to_json

See to JSON::XS. objToJson is an alias.

from_json

See to JSON::XS. jsonToObj is an alias.

METHODS

new

Returns JSON::PP object.

ascii

See to JSON::XS.

utf8

See to JSON::XS.

pretty

See to JSON::XS.

indent

See to JSON::XS. Strictly, this module does not carry out equivalent to XS.

$json->indent(4);

is not the same as this:

$json->indent();
space_before

See to JSON::XS.

space_after

See JSON::XS.

canonical

See to JSON::XS. Strictly, this module does not carry out equivalent to XS. This method can take a subref for sorting (see to JSON).

allow_nonref

See to JSON::XS.

shrink

Not yet implemented.

max_depth

See to JSON::XS. Strictly, this module does not carry out equivalent to XS.

encode

See to JSON::XS.

decode

See to JSON::XS.

property

Accessor.

$json->property(utf8 => 1); # $json->utf8(1);

$value = $json->property('utf8'); # returns 1.
self_encode

See JSON's self convert.

deny_blessed_object

Not yet implemented.

UTF8_off

Not yet implemented.

allow_tied

Enable.

TODO

Want to work on Perl 5.6

This module uses Encode...

Document!

It is troublesome.

clean up

Under the cleaning.

SEE ALSO

JSON, JSON::XS

AUTHOR

Makamaka Hannyaharamitu, <makamaka[at]cpan.org>

COPYRIGHT AND LICENSE

Copyright 2007 by Makamaka Hannyaharamitu

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

1 POD Error

The following errors were encountered while parsing the POD:

Around line 1150:

=cut found outside a pod block. Skipping to next block.