JSON::Util - easy and portable encode/decode of JSON


JSON-Util documentation  | view source Contained in the JSON-Util distribution.

Index


NAME

Top

JSON::Util - easy and portable encode/decode of JSON

SYNOPSIS

Top

    use JSON::Util;
    $data = JSON::Util->decode('{"bar": "foo"}');
    $data = JSON::Util->decode('some.json');
    JSON::Util->encode({ 'foo' => 'bar' }, 'someother.json');

    $data = JSON::Util->decode(['..', 'folder', some.json]);
    JSON::Util->encode([123,321], ['..', 'folder', someother.json]);

    print JSON::Util->encode([987,789]), "\n";
    print JSON::Util->encode({987 => 789}), "\n";

    my $json = JSON::Util->new(pretty => 0, convert_blessed => 1);
    print $json->encode([ $object, $object2 ]);

    # with file locking
    $data = JSON::Util->decode(['..', 'folder', some.json], { 'LOCK_SH' => 1 });
    $data = JSON::Util->decode(['..', 'folder', some.json], { 'LOCK_SH' => 1, LOCK_NB => 1 });
    JSON::Util->encode([123,321], ['..', 'folder', someother.json], { 'LOCK_EX' => 1 });
    JSON::Util->encode([123,321], ['..', 'folder', someother.json], { 'LOCK_EX' => 1, LOCK_NB => 1 });

DESCRIPTION

Top

METHODS

Top

new()

Object constructor. Needed only when the default_json configuration needs to be changed. Any key/value passed as parameter will be called on <JSON::XS-new()>> as <$json-$key($value)>>.

default_json

Returns <JSON::XS-new()>> with:

        'utf8'            => 1,
        'pretty'          => 1,
        'convert_blessed' => 1,

json

Returns current JSON::XS object.

decode($what, [$opt])

Return ref with decoded $what. See IO::Any for $where and $opt description.

encode($data, [$where], [$opt])

Returns encoded $data. If $where is passed then then the result is written there. See IO::Any for $where and $opt description.

AUTHOR

Top

Jozef Kutej, <jkutej at cpan.org>

BUGS

Top

Please report any bugs or feature requests to bug-json-util at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=JSON-Util. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

Top

You can find documentation for this module with the perldoc command.

    perldoc JSON::Util




You can also look for information at:

* RT: CPAN's request tracker

http://rt.cpan.org/NoAuth/Bugs.html?Dist=JSON-Util

* AnnoCPAN: Annotated CPAN documentation

http://annocpan.org/dist/JSON-Util

* CPAN Ratings

http://cpanratings.perl.org/d/JSON-Util

* Search CPAN

http://search.cpan.org/dist/JSON-Util

ACKNOWLEDGEMENTS

Top

COPYRIGHT & LICENSE

Top


JSON-Util documentation  | view source Contained in the JSON-Util distribution.