Branch Coverage

blib/lib/XS/JIT/Header.pm
Criterion Covered Total %
branch 51 140 36.4


line true false branch
38 14 0 if ($self->{'header'})
57 5 9 unless ($header =~ m[^[/.]])
61 13 1 if (-f $header) { }
82 5 0 if $XS::JIT::Header::Config{'usrinc'}
85 5 0 if ($XS::JIT::Header::Config{'locincpth'})
93 0 5 if ($^O eq "darwin")
95 0 0 unless (defined $sdk_path)
97 0 0 if $sdk_path
100 0 0 if $sdk_path and -d "$sdk_path/usr/include"
105 20 25 if defined $_ and -d $_
120 5 0 if -f $path
150 0 15 unless defined $c_name
156 15 0 if (@args == 0) { }
0 0 elsif (@args == 1 and not ref $args[0]) { }
0 0 elsif (@args == 2 and ref $args[0] eq 'ARRAY') { }
0 0 elsif (@args == 3) { }
159 0 15 if $self->{'prefix'}
168 0 0 if $self->{'prefix'}
182 0 0 unless ($func_info or $arg_types)
187 15 0 if $func_info
188 15 0 if $func_info
191 0 15 $perl_name =~ /::/ ? :
198 15 0 $func_info ? :
212 0 4 if (defined $filter)
213 0 0 if (ref $filter eq 'Regexp') { }
0 0 elsif (ref $filter eq 'CODE') { }
214 0 0 unless $name =~ /$filter/
217 0 0 unless &$filter($name)
249 2 0 $info ? :
268 10 4 if ($num_args > 0)
280 12 8 if ($type_info->{'perl'} eq 'IV') { }
0 8 elsif ($type_info->{'perl'} eq 'UV') { }
8 0 elsif ($type_info->{'perl'} eq 'NV') { }
0 0 elsif ($type_info->{'perl'} eq 'PV') { }
0 0 elsif ($type_info->{'perl'} eq 'SV') { }
0 0 elsif ($type_info->{'perl'} eq 'HV') { }
0 0 elsif ($type_info->{'perl'} eq 'AV') { }
0 0 elsif ($type_info->{'perl'} eq 'CV') { }
284 0 0 if ($type_info->{'is_ptr'}) { }
331 2 12 if ($return_type eq 'void') { }
338 6 6 if ($ret_info->{'perl'} eq 'IV') { }
0 6 elsif ($ret_info->{'perl'} eq 'UV') { }
4 2 elsif ($ret_info->{'perl'} eq 'NV') { }
2 0 elsif ($ret_info->{'perl'} eq 'PV') { }
0 0 elsif ($ret_info->{'perl'} eq 'SV') { }
0 0 elsif ($ret_info->{'perl'} eq 'HV') { }
0 0 elsif ($ret_info->{'perl'} eq 'AV') { }
0 0 elsif ($ret_info->{'perl'} eq 'CV') { }
342 0 0 if ($ret_info->{'is_ptr'}) { }
396 0 0 if ($self->{'_header_path'})
400 0 0 if $dir
412 0 0 unless defined $self->{'lib'}
417 0 0 if ($lib =~ m([/\\]) or $lib =~ /\.(?:so|dylib|dll|a)(?:\.\d+)*$/)
429 0 0 if $self->{'_compiled'} and not $self->{'force'}
431 0 0 unless @{$self->{'_functions'};}
441 0 0 if ($self->{'_header_path'})
473 0 0 unless ($result)
486 1 5 unless @{$self->{'_functions'};}
534 1 2 unless defined $filename
535 1 1 unless @{$self->{'_functions'};}
558 6 0 if ($self->{'_header_path'})
683 0 5 if -d $dir
692 5 25 if (not length $path) { }
694 5 0 if $is_absolute and not length $part
700 15 15 if (length $path > 1 and not -d $path)
701 0 15 unless mkdir $path
709 0 16 unless open my $fh, ">", $filename
712 0 16 unless close $fh
720 0 14 if (@{$self->{'_functions'};} and not $self->{'_compiled'})
722 0 0 if $@