ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/JSON-XS/XS.pm
(Generate patch)

Comparing JSON-XS/XS.pm (file contents):
Revision 1.98 by root, Wed Mar 26 02:36:18 2008 UTC vs.
Revision 1.100 by root, Sun Mar 30 09:27:16 2008 UTC

103 103
104package JSON::XS; 104package JSON::XS;
105 105
106use strict; 106use strict;
107 107
108our $VERSION = '2.1'; 108our $VERSION = '2.2';
109our @ISA = qw(Exporter); 109our @ISA = qw(Exporter);
110 110
111our @EXPORT = qw(encode_json decode_json to_json from_json); 111our @EXPORT = qw(encode_json decode_json to_json from_json);
112 112
113sub to_json($) { 113sub to_json($) {
462Example, encode a Perl scalar as JSON value with enabled C<allow_nonref>, 462Example, encode a Perl scalar as JSON value with enabled C<allow_nonref>,
463resulting in an invalid JSON text: 463resulting in an invalid JSON text:
464 464
465 JSON::XS->new->allow_nonref->encode ("Hello, World!") 465 JSON::XS->new->allow_nonref->encode ("Hello, World!")
466 => "Hello, World!" 466 => "Hello, World!"
467
468=item $json = $json->allow_unknown ([$enable])
469
470=item $enabled = $json->get_allow_unknown
471
472If C<$enable> is true (or missing), then C<encode> will I<not> throw an
473exception when it encounters values it cannot represent in JSON (for
474example, filehandles) but instead will encode a JSON C<null> value. Note
475that blessed objects are not included here and are handled separately by
476c<allow_nonref>.
477
478If C<$enable> is false (the default), then C<encode> will throw an
479exception when it encounters anything it cannot encode as JSON.
480
481This option does not affect C<decode> in any way, and it is recommended to
482leave it off unless you know your communications partner.
467 483
468=item $json = $json->allow_blessed ([$enable]) 484=item $json = $json->allow_blessed ([$enable])
469 485
470=item $enabled = $json->get_allow_blessed 486=item $enabled = $json->get_allow_blessed
471 487
1214 1230
1215First comes a comparison between various modules using 1231First comes a comparison between various modules using
1216a very short single-line JSON string (also available at 1232a very short single-line JSON string (also available at
1217L<http://dist.schmorp.de/misc/json/short.json>). 1233L<http://dist.schmorp.de/misc/json/short.json>).
1218 1234
1219 {"method": "handleMessage", "params": ["user1", "we were just talking"], \ 1235 {"method": "handleMessage", "params": ["user1",
1220 "id": null, "array":[1,11,234,-5,1e5,1e7, true, false]} 1236 "we were just talking"], "id": null, "array":[1,11,234,-5,1e5,1e7,
1237 true, false]}
1221 1238
1222It shows the number of encodes/decodes per second (JSON::XS uses 1239It shows the number of encodes/decodes per second (JSON::XS uses
1223the functional interface, while JSON::XS/2 uses the OO interface 1240the functional interface, while JSON::XS/2 uses the OO interface
1224with pretty-printing and hashkey sorting enabled, JSON::XS/3 enables 1241with pretty-printing and hashkey sorting enabled, JSON::XS/3 enables
1225shrink). Higher is better: 1242shrink). Higher is better:

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines