The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Storable::AMF - Perl extension for serialize/deserialize AMF date

SYNOPSIS

  use Storable::AMF qw(freeze thaw);

  $amf0 = freeze($perl_object);
  $perl_object = thaw($amf0);

        
  # Store/retrieve to disk amf0 data
        
  store $perl_object, 'file';
  $restored_perl_object = retrieve 'file';


  use Storable::AMF qw(nstore freeze thaw dclone);

  # Network order: Due to spec of AMF0 format objects (hash, arrayref) stored in network order.
  # and thus nstore and store are synonyms 

  nstore \%table, 'file';
  $hashref = retrieve('file');  # There is NO nretrieve()

  
  # Advisory locking
  use Storable::AMF qw(lock_store lock_nstore lock_retrieve)
  lock_store \%table, 'file';
  lock_nstore \%table, 'file';
  $hashref = lock_retrieve('file');

DESCRIPTION

This module is (de)serializer for Adobe's AMF (Action Message Format). This is only module and it recognize only AMF data. Core function implemented in C. And some cases faster then Storable( for me always)

EXPORT

None by default.

EXPORT_OK

freeze($obj) Serialize perl object($obj) to AMF, and return AMF data

thaw($amf0) Deserialize AMF data to perl object, and return the perl object =head2 store $obj, $file Store serialized AMF0 data to file =head2 nstore $obj, $file Same as store =head2 retrieve $obj, $file =head2 lock_store $obj, $file Same as store but with Advisory locking =head2 lock_nstore $obj, $file Same as lock_store =head2 lock_retrieve $file Same as retrieve but with advisory locking

dclone $file Deep cloning data structure

NOTICE

  Storable::AMF is currently is alpha development stage. 

LIMITATION

At current moment and with restriction of AMF0/AMF3 format referrences to scalar are not serialized, and can't/ may not serialize tied variables.

SEE ALSO

Data::AMF, Storable

AUTHOR

Anatoliy Grishaev, <grian at cpan dot org>

COPYRIGHT AND LICENSE

Copyright (C) 2008 by A. G. Grishaev

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.