Branch Coverage

blib/lib/Perinci/Exporter.pm
Criterion Covered Total %
branch 92 110 83.6


line true false branch
27 0 26 unless $into
41 3 25 defined $instargs{'default_wrap'} ? :
2 26 defined $instargs{'default_on_clash'} ? :
53 28 0 if ($_[0] and ref $_[0] eq 'HASH') { }
72 0 159 unless $k =~ /\A\w+\z/
73 34 125 unless $metas->{$k}{'tags'}
74 25 134 if grep {$_ eq 'export:never';} @tags
80 27 1 unless $expopts->{'default_exports'}
82 29 25 if ($exports{$k}) { }
91 27 1 unless $expopts->{'extra_exports'}
93 3 51 if ($exports{$k}) { }
110 27 28 unless @_
112 4 24 if ($i =~ s/^-//) { }
113 1 3 unless @_
118 11 13 if (@_ and ref $_[0] eq 'HASH')
127 5 22 unless (@imps)
145 7 22 if ($imp->{'sym'} =~ s/^://) { }
147 89 18 unless "export:$imp->{'sym'}" eq $_
156 1 48 unless ($exports{$ssym})
162 1 47 if ($imp->{'as'}) { }
166 1 46 defined $imp->{'prefix'} ? :
3 44 if (my $prefix = defined $imp->{'prefix'} ? $imp->{'prefix'} : $impopts{'prefix'})
169 1 46 defined $imp->{'suffix'} ? :
3 44 if (my $suffix = defined $imp->{'suffix'} ? $imp->{'suffix'} : $impopts{'suffix'})
175 2 46 if ($existing{$tsym})
176 1 1 defined $impopts{'on_clash'} ? :
2 0 if ((defined $impopts{'on_clash'} ? $impopts{'on_clash'} : $expopts->{'default_on_clash'}) eq 'bail')
178 2 0 $tsym eq $ssym ? :
187 0 46 ref $expopts->{'default_wrap'} eq 'HASH' ? :
189 46 0 if ref $default_wrap_opts ne 'HASH'
190 6 40 if $default_wrap and ref $default_wrap ne 'HASH'
193 1 45 ref $imp->{'wrap'} eq 'HASH' ? :
194 0 46 if $wrap and ref $wrap ne 'HASH'
195 1 45 if (defined $imp->{'convert'})
196 0 1 if defined $wrap and not $wrap
198 1 0 unless ref $wrap eq 'HASH'
203 5 178 if (defined $imp->{$_})
204 1 4 if defined $wrap and not $wrap
206 4 0 unless ref $wrap eq 'HASH'
213 38 7 unless defined $wrap
219 33 12 unless $wrap
222 6 6 if (keys %$wrap == 0)
227 1 11 if ($cache) { }
233 1 10 if (not $meta) { }
243 0 10 unless $res->[0] == 200
246 4 6 if keys %$wrap == 0
272 0 27 unless not length $pkg or _package_exists($pkg)
277 0 54 if $k =~ /::$/
279 0 54 unless ("$v" =~ /^\*/)
284 3 51 if (defined *$v{'CODE'})
288 0 54 if (defined *$v{'HASH'})
292 24 30 if (defined *$v{'ARRAY'})
296 0 54 if (defined *$v{'SCALAR'} and defined ${*$v;})
302 27 27 unless ($n)
317 0 27 if ($pkg =~ s/::(\w+)\z//) { }