File Coverage

blib/lib/CDB_File_Thawed.pm
Criterion Covered Total %
statement 28 31 90.3
branch n/a
condition n/a
subroutine 9 10 90.0
pod 1 1 100.0
total 38 42 90.4


line stmt bran cond sub pod time code
1             package CDB_File_Thawed;
2 2     2   12 use strict;
  2         5  
  2         79  
3 2     2   10 use CDB_File;
  2         3  
  2         82  
4 2     2   2390 use Storable qw(thaw);
  2         16194  
  2         728  
5             our @ISA = qw(CDB_File);
6              
7             sub new {
8 4     4 1 14 my($class, $filename, $tempfile) = @_;
9 4         41 my $maker = CDB_File->new($filename, $tempfile);
10 4         507 my $self = { maker => $maker };
11 4         16 bless $self, 'CDB_File::Maker_Thawed';
12 4         31 return $self;
13             }
14              
15             sub FETCH {
16 0     0   0 my($self, $key) = @_;
17 0         0 my $value = CDB_File::FETCH($self, $key);
18 0         0 $value = thaw($value);
19             }
20              
21             package CDB_File::Maker_Thawed;
22 2     2   22 use strict;
  2         5  
  2         90  
23 2     2   10 use CDB_File;
  2         4  
  2         85  
24 2     2   10 use Storable qw(nfreeze);
  2         5  
  2         360  
25             our @ISA = qw(CDB_File::Maker);
26              
27             sub insert {
28 644     644   2199 my($self, $key, $value) = @_;
29 644         1599 $value = nfreeze($value);
30 644         34677 CDB_File::Maker::insert($self->{maker}, $key, $value);
31             }
32              
33             sub finish {
34 4     4   43 my($self) = @_;
35 4         3219509 CDB_File::Maker::finish($self->{maker});
36             }
37              
38             1;
39              
40             __END__