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

Comparing CBOR-XS/XS.pm (file contents):
Revision 1.41 by root, Mon Jan 6 04:15:31 2014 UTC vs.
Revision 1.46 by root, Mon Feb 8 04:11:11 2016 UTC

64 64
65package CBOR::XS; 65package CBOR::XS;
66 66
67use common::sense; 67use common::sense;
68 68
69our $VERSION = 1.25; 69our $VERSION = 1.4;
70our @ISA = qw(Exporter); 70our @ISA = qw(Exporter);
71 71
72our @EXPORT = qw(encode_cbor decode_cbor); 72our @EXPORT = qw(encode_cbor decode_cbor);
73 73
74use Exporter; 74use Exporter;
224cycles - future versions of this module might chose to decode cyclic data 224cycles - future versions of this module might chose to decode cyclic data
225structures using weak references when this option is off, instead of 225structures using weak references when this option is off, instead of
226throwing an error. 226throwing an error.
227 227
228This option does not affect C<encode> in any way - shared values and 228This option does not affect C<encode> in any way - shared values and
229references will always be decoded properly if present. 229references will always be encoded properly if present.
230 230
231=item $cbor = $cbor->pack_strings ([$enable]) 231=item $cbor = $cbor->pack_strings ([$enable])
232 232
233=item $enabled = $cbor->get_pack_strings 233=item $enabled = $cbor->get_pack_strings
234 234
814 814
815These tags are automatically created (and decoded) for serialisable 815These tags are automatically created (and decoded) for serialisable
816objects using the C<FREEZE/THAW> methods (the L<Types::Serialier> object 816objects using the C<FREEZE/THAW> methods (the L<Types::Serialier> object
817serialisation protocol). See L<OBJECT SERIALISATION> for details. 817serialisation protocol). See L<OBJECT SERIALISATION> for details.
818 818
819=item 28, 29 (shareable, sharedref, L <http://cbor.schmorp.de/value-sharing>) 819=item 28, 29 (shareable, sharedref, L<http://cbor.schmorp.de/value-sharing>)
820 820
821These tags are automatically decoded when encountered (and they do not 821These tags are automatically decoded when encountered (and they do not
822result in a cyclic data structure, see C<allow_cycles>), resulting in 822result in a cyclic data structure, see C<allow_cycles>), resulting in
823shared values in the decoded object. They are only encoded, however, when 823shared values in the decoded object. They are only encoded, however, when
824C<allow_sharing> is enabled. 824C<allow_sharing> is enabled.
834will be shared, others will not. While non-reference shared values can be 834will be shared, others will not. While non-reference shared values can be
835generated in Perl with some effort, they were considered too unimportant 835generated in Perl with some effort, they were considered too unimportant
836to be supported in the encoder. The decoder, however, will decode these 836to be supported in the encoder. The decoder, however, will decode these
837values as shared values. 837values as shared values.
838 838
839=item 256, 25 (stringref-namespace, stringref, L <http://cbor.schmorp.de/stringref>) 839=item 256, 25 (stringref-namespace, stringref, L<http://cbor.schmorp.de/stringref>)
840 840
841These tags are automatically decoded when encountered. They are only 841These tags are automatically decoded when encountered. They are only
842encoded, however, when C<pack_strings> is enabled. 842encoded, however, when C<pack_strings> is enabled.
843 843
844=item 22098 (indirection, L<http://cbor.schmorp.de/indirection>) 844=item 22098 (indirection, L<http://cbor.schmorp.de/indirection>)
1022 1022
1023 1023
1024=head1 LIMITATIONS ON PERLS WITHOUT 64-BIT INTEGER SUPPORT 1024=head1 LIMITATIONS ON PERLS WITHOUT 64-BIT INTEGER SUPPORT
1025 1025
1026On perls that were built without 64 bit integer support (these are rare 1026On perls that were built without 64 bit integer support (these are rare
1027nowadays, even on 32 bit architectures), support for any kind of 64 bit 1027nowadays, even on 32 bit architectures, as all major Perl distributions
1028are built with 64 bit integer support), support for any kind of 64 bit
1028integer in CBOR is very limited - most likely, these 64 bit values will 1029integer in CBOR is very limited - most likely, these 64 bit values will
1029be truncated, corrupted, or otherwise not decoded correctly. This also 1030be truncated, corrupted, or otherwise not decoded correctly. This also
1030includes string, array and map sizes that are stored as 64 bit integers. 1031includes string, array and map sizes that are stored as 64 bit integers.
1031 1032
1032 1033

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines