AnyEvent-Serialize

 view release on metacpan or  search on metacpan

lib/AnyEvent/Serialize.pm  view on Meta::CPAN

  use AnyEvent::Serialize 'serialize';
  use AnyEvent::Serialize 'deserialize';
  use AnyEvent::Serialize ... block_size => 666;

  serialize $object, sub { ($str, $recursion_detected) = @_ };
  deserialize $string, sub { my ($object, $error, $tail) = @_ }

=head1 DESCRIPTION

Sometimes You need to serialize/deserialize a lot of data. If You
do it using L<Data::Dumper> or B<eval> it can take You too much time.
This module splits (de)serialization process into fixed-size parts
and does this work in non-blocking mode.

This module uses L<Data::StreamSerializer> and L<Data::StreamDeserializer>
to serialize or deserialize Your data.

=head1 EXPORT

=head2 serialize($object, $result_callback)

t/serialize.t  view on Meta::CPAN

use warnings;
use strict;

use Time::HiRes qw(time);
use Data::Dumper;
use AnyEvent;
local $Data::Dumper::Indent   = 0;
local $Data::Dumper::Terse    = 1;
local $Data::Dumper::Useqq    = 1;
local $Data::Dumper::Deepcopy = 1;

use Test::More tests => 54;
BEGIN {
    use_ok 'AnyEvent';
    use_ok('AnyEvent::Serialize', ':all', 'block_size' => 10);
};

sub rand_array($);
sub compare_object($$);
sub rand_hash($);



( run in 0.564 second using v1.01-cache-2.11-cpan-4d50c553e7e )