line |
true |
false |
branch |
106
|
61 |
10 |
if ($#param >= 1) { } |
|
9 |
1 |
elsif ($#param == 0) { } |
113
|
0 |
9 |
if (ref $self->{'ConfigFile'} eq 'HASH') |
130
|
69 |
1 |
unless ($self->{'parsed'}) |
134
|
11 |
51 |
if ($self->{'InterPolateVars'}) |
151
|
11 |
58 |
if ($self->{'DefaultConfig'} and $self->{'InterPolateVars'}) |
154
|
14 |
55 |
if (exists $self->{'StringContent'}) { } |
|
11 |
44 |
elsif (exists $self->{'ConfigHash'}) { } |
|
0 |
44 |
elsif (ref $self->{'ConfigFile'} eq 'GLOB' or ref $self->{'ConfigFile'} eq 'FileHandle') { } |
160
|
10 |
1 |
if (ref $self->{'ConfigHash'} eq 'HASH') { } |
175
|
44 |
0 |
if ($self->{'ConfigFile'}) { } |
178
|
0 |
44 |
if (file_name_is_absolute($self->{'ConfigFile'})) |
182
|
0 |
0 |
unless ($self->{'ConfigPath'}) |
205
|
11 |
51 |
if ($self->{'ExtendedAccess'}) |
212
|
0 |
11 |
if ($Config::General::EVAL_ERROR) |
223
|
11 |
59 |
if ($self->{'InterPolateVars'} or $self->{'InterPolateEnv'}) |
233
|
0 |
11 |
if ($Config::General::EVAL_ERROR) |
246
|
2 |
68 |
if ($self->{'SplitPolicy'} ne 'guess') { } |
247
|
0 |
2 |
if ($self->{'SplitPolicy'} eq 'whitespace') { } |
|
0 |
2 |
elsif ($self->{'SplitPolicy'} eq 'equalsign') { } |
|
2 |
0 |
elsif ($self->{'SplitPolicy'} eq 'custom') { } |
249
|
0 |
0 |
if (not $self->{'StoreDelimiter'}) |
255
|
0 |
0 |
if (not $self->{'StoreDelimiter'}) |
260
|
0 |
2 |
if (not $self->{'SplitDelimiter'}) |
269
|
68 |
0 |
if (not $self->{'StoreDelimiter'}) |
285
|
6 |
55 |
if (exists $conf{-'file'}) |
288
|
0 |
61 |
if (exists $conf{-'hash'}) |
293
|
29 |
32 |
if (exists $conf{-'ConfigFile'}) |
296
|
11 |
50 |
if (exists $conf{-'ConfigHash'}) |
301
|
0 |
61 |
if (exists $conf{-'ConfigPath'}) |
303
|
0 |
0 |
ref $configpath eq 'ARRAY' ? : |
307
|
15 |
46 |
if (exists $conf{-'String'}) |
308
|
13 |
2 |
if (not ref $conf{-'String'}) { } |
|
1 |
1 |
elsif (ref $conf{-'String'} eq 'ARRAY') { } |
309
|
13 |
0 |
if ($conf{-'String'}) |
325
|
1 |
59 |
if (exists $conf{-'Tie'}) |
326
|
1 |
0 |
if ($conf{-'Tie'}) |
332
|
2 |
58 |
if (exists $conf{-'FlagBits'}) |
333
|
2 |
0 |
if ($conf{-'FlagBits'} and ref $conf{-'FlagBits'} eq 'HASH') |
340
|
3 |
57 |
if (exists $conf{-'DefaultConfig'}) |
341
|
2 |
1 |
if ($conf{-'DefaultConfig'} and ref $conf{-'DefaultConfig'} eq 'HASH') { } |
|
1 |
0 |
elsif ($conf{-'DefaultConfig'} and ref $conf{-'DefaultConfig'} eq '') { } |
357
|
0 |
75 |
unless (exists $self->{$key}) |
360
|
61 |
14 |
if ($conf{$entry} =~ /$self->{'AutoTrueFlags'}{'true'}/io) { } |
|
6 |
8 |
elsif ($conf{$entry} =~ /$self->{'AutoTrueFlags'}{'false'}/io) { } |
372
|
6 |
54 |
if ($self->{'MergeDuplicateOptions'}) |
374
|
6 |
0 |
unless (exists $conf{-'AllowMultiOptions'}) |
379
|
0 |
60 |
if ($self->{'ApacheCompatible'}) |
392
|
3 |
57 |
if ($self->{'UseApacheIfDefine'}) |
393
|
3 |
0 |
if (exists $conf{-'Define'}) |
396
|
1 |
2 |
if ($ref eq '') { } |
|
0 |
2 |
elsif ($ref eq 'SCALAR') { } |
|
1 |
1 |
elsif ($ref eq 'ARRAY') { } |
|
1 |
0 |
elsif ($ref eq 'HASH') { } |
424
|
49 |
0 |
exists $this->{'config'} ? : |
433
|
1 |
0 |
exists $this->{'files'} ? : |
445
|
0 |
71 |
unless $cont |
449
|
8 |
63 |
if ($basepath) { } |
458
|
0 |
71 |
if ($^O =~ /win/i) |
465
|
4 |
67 |
if ($this->{'IncludeGlob'} and $configfile =~ /$glob/) |
472
|
0 |
4 |
if (not @include and defined $this->{'ConfigPath'}) |
475
|
0 |
0 |
if (-d catfile($dir, $path)) |
491
|
3 |
64 |
unless (-e $configfile) |
493
|
0 |
3 |
if (defined $this->{'ConfigPath'}) |
496
|
0 |
0 |
if (-e catfile($dir, $basefile)) |
503
|
3 |
0 |
unless ($found) |
504
|
0 |
3 |
defined $this->{'ConfigPath'} ? : |
510
|
0 |
64 |
unless ($Config::General::RS) |
515
|
1 |
63 |
if (-d $configfile and $this->{'IncludeDirectories'}) { } |
|
0 |
63 |
elsif (-d $configfile) { } |
|
63 |
0 |
elsif (-e _) { } |
518
|
0 |
1 |
unless opendir INCLUDEDIR, $configfile |
524
|
5 |
0 |
if (not exists $this->{'files'}{$file} or $this->{'IncludeAgain'}) { } |
539
|
1 |
62 |
if (exists $this->{'files'}{$configfile} and not $this->{'IncludeAgain'}) { } |
564
|
0 |
67 |
unless my $fh = 'IO::File'->new($file, 'r') |
572
|
4 |
63 |
if $this->{'UTF8'} or $has_BOM |
575
|
63 |
4 |
if $n_read and not $has_BOM |
594
|
15 |
67 |
if ($flag and $flag eq 'SCALAR') { } |
595
|
0 |
15 |
if (ref $fh eq 'ARRAY') { } |
608
|
0 |
82 |
unless $cont |
610
|
3 |
79 |
if ($this->{'UseApacheIfDefine'}) |
615
|
0 |
766 |
if ($this->{'AutoLaunder'}) |
616
|
0 |
0 |
if (/^(.*)$/) |
624
|
25 |
741 |
if ($hier) |
626
|
7 |
18 |
if (/^(\s*)\Q$hierend\E\s*$/) { } |
630
|
0 |
7 |
if ($indent) { } |
651
|
741 |
0 |
if ($this->{'CComments'}) |
653
|
2 |
739 |
if (m[(\s*/\*.*\*/\s*)]) { } |
|
15 |
724 |
elsif (m[^\s*/\*]) { } |
|
15 |
709 |
elsif (m[\*/]) { } |
659
|
0 |
15 |
if (m[\*/\s*$]) { } |
668
|
0 |
15 |
unless ($c_comment) |
674
|
152 |
589 |
if $c_comment |
679
|
0 |
589 |
if /^\s*#/ |
682
|
9 |
580 |
if (/(?
|
691
|
3 |
577 |
if (not $this->{'ApacheCompatible'} and m[\s*<([^/]+?.*?)/>\s*$]) |
693
|
3 |
0 |
unless ($block =~ /\"/) |
694
|
3 |
0 |
unless ($block =~ /\s[^\s]/) |
699
|
3 |
0 |
if ($this->{'SlashIsDirectory'}) |
714
|
507 |
70 |
if ($this->{'SplitPolicy'} eq 'guess') { } |
715
|
2 |
505 |
if (/^\s*([^=]+?)\s*=\s*<<\s*(.+?)\s*$/) { } |
|
5 |
500 |
elsif (/^\s*(\S+?)\s+<<\s*(.+?)\s*$/) { } |
730
|
1 |
69 |
if (/^\s*(.+?)($this->{'SplitDelimiter'})<<\s*(.+?)\s*$/) |
743
|
5 |
564 |
if ($longline) { } |
753
|
131 |
433 |
if /^\s*$/ |
758
|
87 |
346 |
if ($this->{'IncludeRelative'} and defined $this->{'CurrentConfigFilePath'}) { } |
|
0 |
346 |
elsif (defined $this->{'ConfigPath'}) { } |
767
|
16 |
417 |
if ($this->{'UseApacheInclude'}) { } |
769
|
1 |
15 |
if (/^\s*(include|includeoptional)\s*(["'])(.*?)(?
|
|
3 |
12 |
elsif (/^\s*(include|includeoptional)\s+(.+?)\s*$/i) { } |
777
|
4 |
12 |
if ($incl_file) |
778
|
2 |
0 |
if ($this->{'IncludeGlob'} and $opt =~ /opt/i and not $incl_file =~ /[*?\[\{\\]/) |
793
|
0 |
417 |
if (/^\s*<>\\s*$/i) { } |
|
17 |
400 |
elsif (/^\s*<>\s*$/i) { } |
801
|
21 |
412 |
if ($incl_file) { } |
802
|
8 |
13 |
if ($this->{'IncludeRelative'} and $path and not file_name_is_absolute($incl_file)) { } |
839
|
3 |
6 |
if (/^<\s*IfDefine\s+([!]*)("[^"]+"|\S+)\s*>/i) { } |
|
3 |
3 |
elsif (m[^<\s*/IfDefine\s*>]i) { } |
|
0 |
3 |
elsif ($includeFlag and /\s*Define\s+("[^"]+"|\S+)/i) { } |
|
3 |
0 |
elsif ($includeFlag) { } |
857
|
0 |
3 |
if ($blockLevel) |
884
|
7 |
614 |
if (/$this->{'EOFseparator'}/) { } |
888
|
499 |
115 |
if ($this->{'SplitPolicy'} eq 'guess') { } |
899
|
0 |
621 |
if ($this->{'NormalizeOption'}) |
903
|
9 |
431 |
if ($value and $value =~ /^"/ and $value =~ /"$/) |
907
|
335 |
286 |
if (not defined $block) { } |
|
21 |
265 |
elsif (m[^<([^/]+?.*?)>$]) { } |
|
107 |
158 |
elsif (m[^(.+?)>$]) { } |
908
|
86 |
249 |
if (m[^<([^/]+?.*?)>$]) { } |
|
0 |
249 |
elsif (m[^(.+?)>$]) { } |
910
|
1 |
85 |
if ($block =~ /^"([^"]+)"$/) { } |
916
|
85 |
0 |
if ($block =~ /^(?:"([^"]+)"|(\S+))(?:\s+(?:"([^"]+)"|(.*)))?$/) |
921
|
0 |
86 |
if ($this->{'NormalizeBlock'}) |
923
|
0 |
0 |
if (defined $blockname) |
925
|
0 |
0 |
if ($blockname eq '') |
931
|
30 |
56 |
if ($this->{'InterPolateVars'}) |
935
|
12 |
18 |
if (defined $blockname) |
939
|
0 |
86 |
if ($this->{'LowerCaseNames'}) |
950
|
0 |
249 |
if ($this->{'LowerCaseNames'}) |
954
|
25 |
224 |
if (exists $config->{$option}) { } |
955
|
5 |
20 |
if ($this->{'MergeDuplicateOptions'}) { } |
959
|
2 |
3 |
if ($this->{'InterPolateVars'}) |
965
|
0 |
20 |
if (not $this->{'AllowMultiOptions'}) { } |
971
|
13 |
7 |
if (ref $config->{$option} ne 'ARRAY') |
980
|
0 |
20 |
if ($Config::General::EVAL_ERROR) { } |
991
|
2 |
222 |
if ($this->{'ForceArray'} and defined $value and $value =~ /^\[\s*(.+?)\s*\]$/) { } |
999
|
72 |
150 |
if ($this->{'InterPolateVars'}) |
1012
|
21 |
86 |
if ($block_level) { } |
1017
|
42 |
44 |
if (defined $blockname) { } |
1020
|
30 |
12 |
unless (exists $config->{$block}) |
1024
|
9 |
21 |
if ($this->{'InterPolateVars'}) |
1030
|
1 |
41 |
if (ref $config->{$block} eq '') { } |
|
2 |
39 |
elsif (ref $config->{$block} eq 'ARRAY') { } |
|
0 |
39 |
elsif (exists $config->{$block}{$blockname}) { } |
1040
|
0 |
0 |
if ($this->{'MergeDuplicateBlocks'}) { } |
1046
|
0 |
0 |
if (not $this->{'AllowMultiOptions'}) { } |
1053
|
0 |
0 |
if (ref $savevalue eq 'ARRAY') { } |
1068
|
12 |
27 |
if ($this->{'InterPolateVars'}) |
1078
|
5 |
39 |
if (exists $config->{$block}) { } |
1079
|
1 |
4 |
if (ref $config->{$block} eq '') |
1085
|
2 |
2 |
if ($this->{'MergeDuplicateBlocks'}) { } |
1091
|
0 |
2 |
if (not $this->{'AllowMultiOptions'}) { } |
1098
|
0 |
2 |
if (ref $savevalue eq 'ARRAY') { } |
1107
|
0 |
2 |
if ($this->{'InterPolateVars'}) |
1122
|
16 |
23 |
if ($this->{'InterPolateVars'}) |
1140
|
0 |
134 |
if ($block) |
1173
|
0 |
249 |
unless $cont |
1176
|
4 |
245 |
unless (defined $value) |
1182
|
0 |
245 |
if ($this->{'NormalizeValue'}) |
1186
|
73 |
172 |
if ($this->{'InterPolateVars'}) |
1191
|
46 |
199 |
if ($this->{'AutoTrue'}) |
1192
|
7 |
39 |
if ($value =~ /$this->{'AutoTrueFlags'}{'true'}/io) { } |
|
9 |
30 |
elsif ($value =~ /$this->{'AutoTrueFlags'}{'false'}/io) { } |
1201
|
35 |
210 |
if ($this->{'FlagBits'}) |
1202
|
2 |
33 |
if (exists $this->{'FlagBitsFlags'}{$option}) |
1205
|
5 |
1 |
if (exists $__flags{$flag}) { } |
1216
|
244 |
1 |
unless ($this->{'NoEscape'}) |
1230
|
0 |
728 |
if (exists $this->{'Plug'}{$hook}) |
1250
|
0 |
0 |
if (@two and $one and scalar(@two) % 2 == 0) { } |
1270
|
0 |
7 |
if (not $file) { } |
1274
|
0 |
7 |
if ($this->{'UTF8'}) { } |
1276
|
0 |
0 |
unless open $fh, '>:utf8', $file |
1280
|
0 |
7 |
unless $fh = 'IO::File'->new("$file", 'w') |
1283
|
5 |
2 |
if (not $config) { } |
1284
|
5 |
0 |
if (exists $this->{'config'}) { } |
1295
|
6 |
0 |
if ($config_string) { } |
1316
|
0 |
1 |
if (not $config or ref $config ne 'HASH') { } |
1317
|
0 |
0 |
if (exists $this->{'config'}) { } |
1342
|
15 |
16 |
$this->{'SaveSorted'} ? : |
1344
|
1 |
92 |
if ($entry =~ /[<>\n\r]/) |
1348
|
5 |
87 |
if (ref $config->{$entry} eq 'ARRAY') { } |
|
21 |
66 |
elsif (ref $config->{$entry} eq 'HASH') { } |
1349
|
1 |
4 |
if ($this->{'ForceArray'} and scalar @{$config->{$entry};} == 1 and not ref $config->{$entry}[0]) { } |
1354
|
0 |
4 |
$this->{'SaveSorted'} ? : |
1355
|
2 |
8 |
if (ref $line eq 'HASH') { } |
1388
|
0 |
75 |
if (not defined $line) { } |
|
3 |
72 |
elsif ($line =~ /\n/ or $line =~ /\\$/) { } |
1397
|
0 |
3 |
if ($line =~ /$tmplimiter/s) { } |
1414
|
72 |
0 |
unless ($this->{'NoEscape'}) |
1420
|
2 |
70 |
if ($line =~ /^\s/ or $line =~ /\s$/) |
1440
|
0 |
23 |
if ($entry =~ /\s/) |
1449
|
17 |
6 |
if ($num == 1) |
1451
|
11 |
6 |
if (ref $line->{$key} eq 'HASH') |
1472
|
1 |
153 |
if ($this->{'Tie'}) { } |
1476
|
0 |
1 |
if ($Config::General::EVAL_ERROR) |
1505
|
0 |
1 |
if (not $file && $hash) { } |
1509
|
0 |
1 |
if (ref $hash ne 'HASH') { } |
1526
|
0 |
0 |
if (not $hash) { } |
1530
|
0 |
0 |
if (ref $hash ne 'HASH') { } |