Data::Serializer::Raw(3pm) User Contributed Perl Documentation Data::Serializer::Raw(3pm) NAME Data::Serializer::Raw - Provides unified raw interface to perl serializers SYNOPSIS use Data::Serializer::Raw; $obj = Data::Serializer::Raw->new(); $obj = Data::Serializer::Raw->new(serializer => 'Storable'); $serialized = $obj->serialize({a => [1,2,3],b => 5}); $deserialized = $obj->deserialize($serialized); print "$deserialized->{b}\n"; DESCRIPTION Provides a unified interface to the various serializing modules currently available. This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc) EXAMPLES Please see Data::Serializer::Cookbook(3) METHODS new - constructor $obj = Data::Serializer::Raw->new(); $obj = Data::Serializer::Raw->new( serializer => 'Data::Dumper', options => {}, ); new is the constructor object for Data::Serializer::Raw objects. o The default serializer is "Data::Dumper" o The default options is "{}" (pass nothing on to serializer) serialize - serialize reference $serialized = $obj->serialize({a => [1,2,3],b => 5}); This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc) deserialize - deserialize reference $deserialized = $obj->deserialize($serialized); This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc) serializer - change the serializer Currently supports the following serializers: Bencode(3) Convert::Bencode(3) Convert::Bencode_XS(3) Config::General(3) Data::Denter(3) Data::Dumper(3) Data::Taxi(3) FreezeThaw(3) JSON(3) JSON::Syck(3) PHP::Serialization(3) Storable(3) XML::Dumper(3) XML::Simple(3) YAML(3) YAML::Syck(3) Default is to use Data::Dumper. Each serializer has its own caveat's about usage especially when dealing with cyclical data structures or CODE references. Please see the appropriate documentation in those modules for further information. options - pass options through to underlying serializer Currently is only supported by Config::General(3), and XML::Dumper(3). my $obj = Data::Serializer::Raw->new(serializer => 'Config::General', options => { -LowerCaseNames => 1, -UseApacheInclude => 1, -MergeDuplicateBlocks => 1, -AutoTrue => 1, -InterPolateVars => 1 }, ) or die "$!\n"; or my $obj = Data::Serializer::Raw->new(serializer => 'XML::Dumper', options => { dtd => 1, } ) or die "$!\n"; store - serialize data and write it to a file (or file handle) $obj->store({a => [1,2,3],b => 5},$file, [$mode, $perm]); or $obj->store({a => [1,2,3],b => 5},$fh); Serializes the reference specified using the serialize method and writes it out to the specified file or filehandle. If a file path is specified you may specify an optional mode and permission as the next two arguments. See IO::File for examples. Trips an exception if it is unable to write to the specified file. retrieve - read data from file (or file handle) and return it after deserialization my $ref = $obj->retrieve($file); or my $ref = $obj->retrieve($fh); Reads first line of supplied file or filehandle and returns it deserialized. AUTHOR Neil Neely <neil AT neely.cx>. http://neil-neely.blogspot.com/ BUGS Please report all bugs here: http://rt.cpan.org/Public/Dist/Display.html?Name=Data-Serializer COPYRIGHT AND LICENSE Copyright (c) 2011 Neil Neely. All rights reserved. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.2 or, at your option, any later version of Perl 5 you may have available. See http://www.perl.com/language/misc/Artistic.html ACKNOWLEDGEMENTS Peter Makholm took the time to profile Data::Serializer(3) and pointed out the value of having a very lean implementation that minimized overhead and just used the raw underlying serializers. SEE ALSO perl(1), Data::Serializer(3). perl v5.30.0 2020-02-08 Data::Serializer::Raw(3pm)
Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2024-12-12 19:55 @18.227.26.100 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)