File Coverage

blib/lib/Evo/Internal/Exception.pm
Criterion Covered Total %
statement 21 21 100.0
branch 4 8 50.0
condition n/a
subroutine 4 4 100.0
pod 0 1 0.0
total 29 34 85.2


line stmt bran cond sub pod time code
1             package Evo::Internal::Exception;
2 30     30   123259 use Evo;
  30         84  
  30         261  
3              
4 30 50   30   4281 sub import($class) {
  30 50       108  
  30         71  
  30         58  
5 30         72 my $caller = caller;
6 30     30   216 no strict 'refs'; ## no critic
  30         66  
  30         4497  
7 30         67 *{"${caller}::exception"} = \&exception;
  30         15970  
8             }
9              
10 119 50   119 0 9802 sub exception($sub) : prototype(&) {
  119 50       330  
  119         238  
  119         200  
11 119         203 local $@;
12 119         286 eval { $sub->() };
  119         330  
13 119         6154 $@;
14             }
15              
16             1;
17              
18             __END__