File Coverage

blib/lib/Data/Serializer/Storable.pm
Criterion Covered Total %
statement 19 19 100.0
branch 2 4 50.0
condition n/a
subroutine 7 7 100.0
pod 2 2 100.0
total 30 32 93.7


line stmt bran cond sub pod time code
1             package Data::Serializer::Storable;
2 11     11   460 BEGIN { @Data::Serializer::Storable::ISA = qw(Data::Serializer) }
3              
4 11     11   228 use warnings;
  11         22  
  11         366  
5 11     11   66 use strict;
  11         21  
  11         414  
6 11     11   64 use Storable;
  11         71  
  11         813  
7 11     11   71 use vars qw($VERSION @ISA);
  11         25  
  11         2037  
8              
9             $VERSION = '0.03';
10              
11              
12             #
13             # Serialize a reference to supplied value
14             #
15             sub serialize {
16 189     189 1 295 my $self = $_[0];
17 189         222 my $ret;
18 189         699 $ret = Storable::nfreeze($_[1]);
19             #using network byte order makes sense to always do, under all circumstances to make it platform neutral
20             #if ($self->{portable}) {
21             # $ret = Storable::nfreeze($_[1]);
22             #} else {
23             # $ret = Storable::freeze($_[1]);
24             #}
25 189 50       9062 defined($ret) ? $ret : undef;
26             }
27              
28             #
29             # Deserialize and de-reference
30             #
31             sub deserialize {
32 189     189 1 841 my $ret = Storable::thaw($_[1]); # Does not care whether portable
33 189 50       4435 defined($ret) ? $ret : undef;
34             }
35              
36             1;
37             __END__