| line | % | coverage | condition |
| 683 | 100 | | Params::Get::get_params(undef, \@_) || {} |
| 686 | 100 | | $params->{'config_dirs'} //= $params->{'path'} |
| 690 | 67 | | $params->{'config_file'} //= $params->{'file'} |
| 693 | 100 | | $params->{'config_file'} and "File::Spec"->file_name_is_absolute($params->{'config_file'}) |
| 724 | 100 | | $params->{'env_prefix'} || 'APP_' |
| 745 | 0 | | $params->{'level'} and $self->{'logger'}->can("level") |
| 779 | 50 | | defined $self->{'config'} and scalar keys %{$$self{"config"};} |
| 817 | 50 | | $self->{'env_prefix'} // "APP_" |
| 820 | 100 | | ($ENV{$prefix . 'ENV'} // $ENV{'PLACK_ENV'}) // $ENV{'NODE_ENV'} |
| 100 | | $ENV{$prefix . 'ENV'} // $ENV{'PLACK_ENV'} |
| 840 | 67 | | $r eq "CODE" or $r eq "GLOB" |
| 859 | 50 | | $self->{'env_prefix'} // "APP_" |
| 860 | 100 | | $ENV{$prefix . 'ENCRYPTION_KEY'} // $ENV{'ENCRYPTION_KEY'} |
| 864 | 50 | | $self->{'env_prefix'} // "APP_" |
| 867 | 67 | | ($self->{'encryption_key_file'} // $ENV{$prefix . 'ENCRYPTION_KEY_FILE'}) // $ENV{'ENCRYPTION_KEY_FILE'} |
| 67 | | $self->{'encryption_key_file'} // $ENV{$prefix . 'ENCRYPTION_KEY_FILE'} |
| 868 | 67 | | defined $kf and -f $kf |
| 889 | 100 | | length $raw == $_HEX_KEY_LEN and $raw =~ /^[0-9A-Fa-f]{$_HEX_KEY_LEN}$/ |
| 893 | 100 | | length $raw >= $_B64_KEY_MIN and length $raw <= $_B64_KEY_MAX |
| 910 | 100 | | $seen //= {} |
| 916 | 50 | | not ref $v and defined $v and $v =~ /^ENC\[/ |
| 920 | 50 | | not ref $v->[$i] and defined $v->[$i] and $v->[$i] =~ /^ENC\[/ |
| 974 | 67 | | $ok and not $@ |
| 996 | 100 | | defined $value and $value =~ /$spec/ |
| 1015 | 67 | | $spec->{'required'} and not $self->exists($key) && defined $value |
| 33 | | $self->exists($key) && defined $value |
| 1022 | 67 | | defined $value and $value =~ /$pattern/ |
| 1028 | 67 | | defined $value and $value < $min |
| 1032 | 67 | | defined $value and $value > $max |
| 1044 | 100 | | $ltype eq "number" or $ltype eq "float" |
| 1045 | 100 | | defined $value and $value =~ /^-?[0-9]+$/ |
| 1049 | 100 | | defined $value and &Scalar::Util::looks_like_number($value) |
| 1053 | 100 | | defined $value and $value =~ /^(?:1|0|true|false|yes|no)$/i |
| 1057 | 67 | | defined $value and not ref $value |
| 1133 | 50 | | $seen // {} |
| 100 | | $prefix // "" |
| 1183 | 100 | | $self->{'config_file'} and scalar @dirs > 1 |
| 1210 | 100 | | length $effective_dir and not -d $effective_dir |
| 1239 | 100 | | defined $data and ref $data |
| 1254 | 0 | | defined $xml_raw and $xml_raw =~ /<!ENTITY\s+\w+\s+(?:SYSTEM|PUBLIC)\b/i |
| 1270 | 67 | | not defined $rc and $self->_load_driver("XML::PP") |
| 1302 | 50 | | ref $toml_data eq "HASH" and scalar keys %$toml_data |
| 1341 | 0 | | require File::Basename and "File::Basename"->import |
| 1344 | 67 | | $ENV{'SCRIPT_NAME'} || $0 |
| 1352 | 100 | | $config_file eq $script_name and length $effective_dir == 0 || $effective_dir eq 'File::Spec'->curdir |
| 1357 | 100 | | -f $path and -r $path |
| 1364 | 100 | | $data =~ /^\s*<\?xml/ or $data =~ m[</[^>]+>] |
| 1409 | 100 | | $data or $raw_content =~ /<!ENTITY\s+\w+\s+(?:SYSTEM|PUBLIC)\b/i |
| 1411 | 100 | | eval {
do {
$data = LoadFile($path)
}
} and ref $data eq "HASH" |
| 1444 | 100 | | not $data or ref $data ne "HASH" |
| 1450 | 67 | | not $toml_err and ref $toml_data eq "HASH" and scalar keys %$toml_data |
| 1456 | 100 | | not $data or ref $data ne "HASH" |
| 1467 | 100 | | not $data or ref $data ne "HASH" |
| 1471 | 0 | | defined $xml_raw and not $xml_raw =~ /<!ENTITY\s+\w+\s+(?:SYSTEM|PUBLIC)\b/i |
| 1475 | 67 | | not $data or ref $data ne "HASH" |
| 1494 | 67 | | not $data or ref $data ne "HASH" |
| 1513 | 100 | | $data and ref $data eq "HASH" |
| 1520 | 100 | | not $@ and $logger |
| 100 | | $data and ref $data eq "HASH" |
| 1546 | 100 | | $ref->{$_} //= {} |
| 1574 | 100 | | $ref->{$_} //= {} |
| 1665 | 100 | | defined $ref and ref $ref eq "HASH" and not $self->{'no_fixate'} |
| 1920 | 50 | | $self->{'_source_records'} // [] |
| 1958 | 50 | | $self->{'_source_records'} // [] |
| 2258 | 100 | | $section and exists $config->{$section} |
| 2291 | 100 | | $imports // [] |
| 2440 | 100 | | $2 // "/" |
| 2455 | 100 | | defined $host and length $host |
| 2586 | 33 | | defined $data and ref $data |
| 2600 | 67 | | $data and $data->{'config'} |
| 2662 | 100 | | ref $val eq "HASH" and exists $val->{$part} |