File Coverage

blib/lib/KiokuDB/TypeMap/Entry/Ref.pm
Criterion Covered Total %
statement 15 20 75.0
branch n/a
condition n/a
subroutine 6 7 85.7
pod 0 3 0.0
total 21 30 70.0


line stmt bran cond sub pod time code
1             package KiokuDB::TypeMap::Entry::Ref;
2 14     14   18301 use Moose;
  14         26  
  14         100  
3              
4 14     14   74135 no warnings 'recursion';
  14         30  
  14         619  
5              
6 14     14   73 use namespace::clean -except => 'meta';
  14         20  
  14         131  
7              
8             with qw(
9             KiokuDB::TypeMap::Entry
10             KiokuDB::TypeMap::Entry::Std::Compile
11             KiokuDB::TypeMap::Entry::Std::ID
12             );
13              
14             sub compile_collapse {
15 146     146 0 290 my ( $self, $reftype ) = @_;
16              
17 146         539 return "visit_ref_fallback";
18             }
19              
20             sub compile_expand {
21 146     146 0 234 my ( $self, $reftype ) = @_;
22              
23 146         656 return "expand_object";
24             }
25              
26             sub compile_refresh {
27 146     146 0 332 my ( $self, $class, @args ) = @_;
28              
29             return sub {
30 0     0     my ( $linker, $object, $entry ) = @_;
31              
32 0           my $new = $linker->expand_object($entry);
33              
34 0           require Data::Swap;
35 0           Data::Swap::swap($new, $object); # FIXME remove!
36              
37 0           return $object;
38 146         1135 };
39             }
40              
41             __PACKAGE__->meta->make_immutable;
42              
43             __PACKAGE__
44              
45             __END__