File Coverage

blib/lib/FFI/ExtractSymbols.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1             package FFI::ExtractSymbols;
2              
3 4     4   304884 use strict;
  4         43  
  4         112  
4 4     4   20 use warnings;
  4         8  
  4         98  
5 4     4   1746 use File::ShareDir::Dist ();
  4         3759  
  4         106  
6 4     4   29 use base qw( Exporter );
  4         9  
  4         806  
7              
8             my $config = File::ShareDir::Dist::dist_config('FFI-ExtractSymbols');
9             our @EXPORT = qw( extract_symbols );
10              
11             # ABSTRACT: Extract symbol names from a shared object or DLL
12             our $VERSION = '0.06'; # VERSION
13              
14              
15             $FFI::ExtractSymbols::mode = '';
16              
17             if($config->{'posix_nm'})
18             {
19             require FFI::ExtractSymbols::PosixNm;
20             }
21             elsif($config->{'openbsd_nm'})
22             {
23             require FFI::ExtractSymbols::OpenBSD;
24             }
25             elsif($config->{'ms_windows'})
26             {
27             require FFI::ExtractSymbols::Windows;
28             }
29             else
30             {
31             die "no appropriate implementation";
32             }
33              
34             1;
35              
36             __END__