File Coverage

blib/lib/Module/CPANTS/Kwalitee/NeedsCompiler.pm
Criterion Covered Total %
statement 17 22 77.2
branch 2 6 33.3
condition 2 12 16.6
subroutine 5 5 100.0
pod 3 3 100.0
total 29 48 60.4


line stmt bran cond sub pod time code
1             package Module::CPANTS::Kwalitee::NeedsCompiler;
2 7     7   3745 use warnings;
  7         15  
  7         233  
3 7     7   50 use strict;
  7         19  
  7         2404  
4              
5             our $VERSION = '1.02';
6             $VERSION =~ s/_//; ## no critic
7              
8 35     35 1 82 sub order { 200 }
9              
10             ##################################################################
11             # Analyse
12             ##################################################################
13              
14             sub analyse {
15 12     12 1 47 my $class = shift;
16 12         31 my $me = shift;
17            
18 12         308 my $files = $me->d->{files_array};
19 12         155 foreach my $f (@$files) {
20 20 50 33     257 if ($f =~ /\.[hc]$/i or $f =~ /\.xs$/i) {
21 0         0 $me->d->{needs_compiler} = 1;
22 0         0 return;
23             }
24             }
25 12 50 33     265 if (defined ref($me->d->{prereq}) and ref($me->d->{prereq}) eq 'ARRAY') {
26 12         458 for my $m (@{ $me->d->{prereq} }) {
  12         217  
27 0 0 0     0 if ($m->{requires} =~ /^Inline::/
      0        
28             or $m->{requires} eq 'ExtUtils::CBuilder'
29             or $m->{requires} eq 'ExtUtils::ParseXS') {
30 0         0 $me->d->{needs_compiler} = 1;
31 0         0 return;
32             }
33             }
34             }
35 12         94 return;
36             }
37              
38             ##################################################################
39             # Kwalitee Indicators
40             ##################################################################
41              
42             sub kwalitee_indicators{
43             return [
44 8     8 1 27 ];
45             }
46              
47              
48             q{Favourite compiler:
49             gcc};
50              
51             __END__