NAME
JSON::Syck - JSON is YAML
SYNOPSIS
use JSON::Syck;
my $data = JSON::Syck::Load($json);
my $json = JSON::Syck::Dump($data);
DESCRIPTION
JSON::Syck is a syck implementatoin of JSON parsing and generation. Because JSON is YAML (http://redhanded.hobix.com/inspect/yamlIsJson.html), using syck gives you the fastest and most memory efficient parser and dumper for JSON data representation.
DIFFERENCE WITH JSON
You might want to know the difference between JSON and JSON::Syck.
Since JSON is a pure-perl module and JSON::Syck is based on libsyck, JSON::Syck is supposed to be very fast and memory efficient. See chansen's benchmark table at http://idisk.mac.com/christian.hansen/Public/perl/serialize.pl
JSON.pm comes with dozens of ways to do the same thing and lots of options, while JSON::Syck doesn't. There's only Load
and Dump
.
Oh, and JSON::Syck doesn't use camelCase method names :-)
UNICODE FLAGS
By default this module doesn't touch any of Unicode flags, and assumes UTF-8 bytes to be passed and emit as an interface. However, when you set $JSON::Syck::ImplicitUnicode
to 1, this module properly decodes UTF-8 binaries and sets Unicode flag everywhere, as in:
JSON (UTF-8 bytes) => Perl (Unicode flagged)
JSON (Unicode flagged) => Perl (Unicode flagged)
Perl (UTF-8 bytes) => JSON (Unicode flagged)
Perl (Unicode flagged) => JSON (Unicode flagged)
AUTHORS
Audrey Tang <autrijus@autrijus.org>
Tatsuhiko Miyagawa <miyagawa@gmail.com>
This module is originally forked from Audrey Tang's excellent YAML::Syck module and 99.9% of the XS code is written by Audrey.
The libsyck code bundled with this module is written by why the lucky stiff, under a BSD-style license. See the COPYING file for details.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.