File Coverage

lib/IPC/SRLock/Constants.pm
Criterion Covered Total %
statement 17 17 100.0
branch 4 4 100.0
condition n/a
subroutine 6 6 100.0
pod 2 2 100.0
total 29 29 100.0


line stmt bran cond sub pod time code
1             package IPC::SRLock::Constants;
2              
3 1     1   3 use strict;
  1         1  
  1         21  
4 1     1   3 use warnings;
  1         2  
  1         20  
5 1     1   3 use parent 'Exporter::Tiny';
  1         1  
  1         4  
6              
7 1     1   38 use File::DataClass::Exception;
  1         1  
  1         116  
8              
9             our @EXPORT_OK = qw( EXCEPTION_CLASS );
10              
11             my $_exception_class = 'File::DataClass::Exception';
12              
13 5     5 1 37 sub EXCEPTION_CLASS () { __PACKAGE__->Exception_Class }
14              
15             sub Exception_Class {
16 7 100   7 1 1587 my ($self, $class) = @_; defined $class or return $_exception_class;
  7         80  
17              
18 2 100       53 $class->can( 'throw' )
19             or die "Class '${class}' is not loaded or has no 'throw' method";
20              
21 1         16 return $_exception_class = $class;
22             }
23              
24             1;
25              
26             __END__