File Coverage

blib/lib/MouseX/NativeTraits/MethodProvider/CodeRef.pm
Criterion Covered Total %
statement 16 16 100.0
branch n/a
condition n/a
subroutine 10 10 100.0
pod 2 2 100.0
total 28 28 100.0


line stmt bran cond sub pod time code
1             package MouseX::NativeTraits::MethodProvider::CodeRef;
2 2     2   1305 use Mouse;
  2         3  
  2         14  
3              
4             extends qw(MouseX::NativeTraits::MethodProvider);
5              
6             sub generate_execute {
7 4     4 1 68 my($self) = @_;
8 4         32 my $reader = $self->reader;
9              
10             return sub {
11 12     12   12318 my ($instance, @args) = @_;
        16      
        16      
        12      
        12      
12 12         67 $reader->($instance)->(@args);
13 4         234 };
14             }
15              
16             sub generate_execute_method {
17 2     2 1 38 my($self) = @_;
18 2         11 my $reader = $self->reader;
19              
20             return sub {
21 4     4   1967 my ($instance, @args) = @_;
22 4         38 $reader->($instance)->($instance, @args);
23 2         137 };
24             }
25              
26 2     2   1042 no Mouse;
  2         4  
  2         11  
27             __PACKAGE__->meta->make_immutable();
28              
29             __END__