dwww Home | Manual pages | Find package

Data::Serializer::Raw(User Contributed Perl DocumentData::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.

           •   The default serializer is "Data::Dumper"

           •   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@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.36.0                      2022-10-22        Data::Serializer::Raw(3pm)

Generated by dwww version 1.15 on Sun Jun 30 10:07:59 CEST 2024.