line |
true |
false |
branch |
193
|
1 |
22 |
unless @_ < 3 |
198
|
1 |
21 |
unless defined $conf and ref $conf eq 'HASH' |
201
|
1 |
20 |
if $$conf{'filename'} and ref \$$conf{'filename'} ne 'SCALAR' |
241
|
8 |
12 |
if (defined $$conf{'path'}) |
242
|
3 |
5 |
if (ref $$conf{'path'} eq 'ARRAY') { } |
|
4 |
1 |
elsif (ref \$$conf{'path'} eq 'SCALAR') { } |
244
|
2 |
1 |
if grep {not -e $_;} @{$$conf{'path'};} |
248
|
1 |
3 |
unless -e $$conf{'path'} |
262
|
1 |
15 |
if $$conf{'filename'} and $#{$$self{'path'};} == -1 |
266
|
1 |
14 |
if $$conf{'delimiter'} and ref $$conf{'delimiter'} ne 'HASH' |
269
|
2 |
66 |
if (defined $$conf{'delimiter'}{$key}) |
273
|
2 |
0 |
unless ref $$conf{'delimiter'}{$key} eq 'ARRAY' and scalar @{$$conf{'delimiter'}{$key};} == 2 |
283
|
48 |
12 |
$$self{'is_block'}{$key} ? : |
|
48 |
12 |
$$self{'is_block'}{$key} ? : |
296
|
4 |
8 |
if ($$conf{'filter'}) |
297
|
1 |
3 |
unless ref $$conf{'filter'} eq 'HASH' |
300
|
0 |
2 |
if (ref $$conf{'filter'}{$key} eq 'CODE') { } |
|
1 |
1 |
elsif (ref \$$conf{'filter'}{$key} eq 'SCALAR') { } |
304
|
1 |
0 |
unless $$self{'filter'}{$key} = $$self{'filter'}{$$conf{'filter'}{$key}} |
318
|
0 |
9 |
if $$self{'filename'} |
426
|
0 |
18 |
if ($skip) { } |
|
7 |
11 |
elsif (ref $part eq 'HASH') { } |
427
|
0 |
0 |
if ref $part eq 'HASH' and $$part{'test'} and $$part{'test'} eq "/$skip" |
431
|
2 |
5 |
if (my $subsec_name = $$part{'sec'}) { } |
|
0 |
5 |
elsif ($$part{'test'}) { } |
434
|
0 |
2 |
unless $subsec_data_ref |
435
|
0 |
2 |
unless ref $subsec_data_ref eq 'HASH' or ref $subsec_data_ref eq 'ARRAY' |
441
|
1 |
1 |
ref $subsec_data_ref eq 'HASH' ? : |
454
|
0 |
0 |
if $$part{'test'} =~ m[^/] |
456
|
0 |
0 |
if ($test =~ s/^!//) { } |
457
|
0 |
0 |
_access_data($test, @data_refs) ? : |
461
|
0 |
0 |
_access_data($test, @data_refs) ? : |
548
|
1 |
108 |
if ($slice =~ /$regexp_comment/) { } |
|
0 |
108 |
elsif ($slice =~ /$$self{'regexp'}{'test'}/) { } |
|
25 |
83 |
elsif ($slice =~ /$$self{'regexp'}{'section'}/) { } |
|
33 |
50 |
elsif ($slice =~ /$$self{'regexp'}{'var'}/) { } |
556
|
12 |
13 |
if ($subsec_name =~ m[^/(.+)$]) |
557
|
0 |
12 |
unless $1 eq $sec_name |
563
|
11 |
2 |
unless ($$sec_ref{'children'}{$subsec_name}) |
567
|
1 |
12 |
if (ref $subsec_array_ref ne 'ARRAY') |
585
|
1 |
32 |
if ref $$sec_ref{'children'}{$var} eq 'ARRAY' |
609
|
1 |
26 |
unless defined $str |
611
|
1 |
25 |
unless ref \$str eq 'SCALAR' |
633
|
77 |
36 |
if ($start > $last_pos) |
638
|
2 |
111 |
if $slice =~ /$dbldelim/ |
645
|
14 |
9 |
if (length $str > $last_pos) |
672
|
3 |
0 |
if -e $canon_file_path |
675
|
0 |
3 |
unless $canon_file_path |
681
|
0 |
3 |
if grep {$canon_file_path eq $_;} @ancestors |
683
|
0 |
3 |
unless open my $fd, "<:encoding($$self{'encoding'})", $canon_file_path |
689
|
0 |
3 |
unless defined($str = <$fd>) |
730
|
0 |
10 |
unless ref $tmpl_ref eq 'HASH' |
733
|
0 |
10 |
unless ref \$access_str eq 'SCALAR' |
737
|
0 |
10 |
unless $access_str |
744
|
0 |
16 |
unless $result |
745
|
10 |
6 |
if (ref $result eq 'HASH') { } |
|
5 |
1 |
elsif (ref $result eq 'ARRAY') { } |
749
|
2 |
3 |
$part =~ /^\d+$/ ? : |
784
|
0 |
5 |
unless scalar @data_refs |
786
|
0 |
5 |
$access_str =~ s[^/][] ? : |
791
|
0 |
5 |
unless scalar @parts |
794
|
0 |
5 |
if $part eq '.' |
795
|
0 |
5 |
if ($part eq '..') { } |
|
0 |
5 |
elsif (ref $data eq 'ARRAY') { } |
|
5 |
0 |
elsif (ref $data eq 'HASH') { } |
799
|
0 |
0 |
$part =~ /^\d+$/ ? : |
823
|
0 |
4 |
unless defined $_ |
825
|
0 |
4 |
unless length $_ |
836
|
0 |
0 |
unless defined $_ |
838
|
0 |
0 |
unless length $_ |
852
|
0 |
3 |
unless length $str |
858
|
3 |
0 |
if ($] >= 5.008002) { } |
859
|
0 |
3 |
if utf8::is_utf8($str) |
868
|
0 |
0 |
if /[^A-Za-z0-9\-_.!~*'()]/ |
881
|
0 |
3 |
unless length $str |
887
|
3 |
0 |
if ($] >= 5.008002) { } |
888
|
0 |
3 |
if utf8::is_utf8($str) |
897
|
0 |
0 |
if m[[^;/?:\@&=+\$,A-Za-z0-9\-_.!~*'()]] |