GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Data::Serializer::Raw(3) User Contributed Perl Documentation Data::Serializer::Raw(3)

Data::Serializer::Raw - Provides unified raw interface to perl serializers

  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";

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)

Please see Data::Serializer::Cookbook(3)

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.

Neil Neely <neil@neely.cx>.

http://neil-neely.blogspot.com/

Please report all bugs here:

http://rt.cpan.org/Public/Dist/Display.html?Name=Data-Serializer

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

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.

perl(1), Data::Serializer(3).
2022-04-07 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.