| line | % | coverage | condition |
| 685 | 100 | | Params::Get::get_params(undef, \@_) || {} |
| 688 | 100 | | $params->{'config_dirs'} //= $params->{'path'} |
| 692 | 67 | | $params->{'config_file'} //= $params->{'file'} |
| 695 | 100 | | $params->{'config_file'} and "File::Spec"->file_name_is_absolute($params->{'config_file'}) |
| 726 | 100 | | $params->{'env_prefix'} || 'APP_' |
| 747 | 0 | | $params->{'level'} and $self->{'logger'}->can("level") |
| 781 | 50 | | defined $self->{'config'} and scalar keys %{$$self{"config"};} |
| 819 | 50 | | $self->{'env_prefix'} // "APP_" |
| 822 | 100 | | ($ENV{$prefix . 'ENV'} // $ENV{'PLACK_ENV'}) // $ENV{'NODE_ENV'} |
| 100 | | $ENV{$prefix . 'ENV'} // $ENV{'PLACK_ENV'} |
| 842 | 67 | | $r eq "CODE" or $r eq "GLOB" |
| 861 | 50 | | $self->{'env_prefix'} // "APP_" |
| 862 | 100 | | $ENV{$prefix . 'ENCRYPTION_KEY'} // $ENV{'ENCRYPTION_KEY'} |
| 866 | 50 | | $self->{'env_prefix'} // "APP_" |
| 869 | 67 | | ($self->{'encryption_key_file'} // $ENV{$prefix . 'ENCRYPTION_KEY_FILE'}) // $ENV{'ENCRYPTION_KEY_FILE'} |
| 67 | | $self->{'encryption_key_file'} // $ENV{$prefix . 'ENCRYPTION_KEY_FILE'} |
| 870 | 67 | | defined $kf and -f $kf |
| 891 | 100 | | length $raw == $_HEX_KEY_LEN and $raw =~ /^[0-9A-Fa-f]{$_HEX_KEY_LEN}$/ |
| 895 | 100 | | length $raw >= $_B64_KEY_MIN and length $raw <= $_B64_KEY_MAX |
| 912 | 100 | | $seen //= {} |
| 918 | 50 | | not ref $v and defined $v and $v =~ /^ENC\[/ |
| 922 | 50 | | not ref $v->[$i] and defined $v->[$i] and $v->[$i] =~ /^ENC\[/ |
| 977 | 67 | | $ok and not $@ |
| 999 | 100 | | defined $value and $value =~ /$spec/ |
| 1018 | 67 | | $spec->{'required'} and not $self->exists($key) && defined $value |
| 33 | | $self->exists($key) && defined $value |
| 1025 | 67 | | defined $value and $value =~ /$pattern/ |
| 1031 | 67 | | defined $value and $value < $min |
| 1035 | 67 | | defined $value and $value > $max |
| 1047 | 100 | | $ltype eq "number" or $ltype eq "float" |
| 1048 | 100 | | defined $value and $value =~ /^-?[0-9]+$/ |
| 1052 | 100 | | defined $value and &Scalar::Util::looks_like_number($value) |
| 1056 | 100 | | defined $value and $value =~ /^(?:1|0|true|false|yes|no)$/i |
| 1060 | 67 | | defined $value and not ref $value |
| 1136 | 50 | | $seen // {} |
| 100 | | $prefix // "" |
| 1186 | 100 | | $self->{'config_file'} and scalar @dirs > 1 |
| 1213 | 100 | | length $effective_dir and not -d $effective_dir |
| 1242 | 100 | | defined $data and ref $data |
| 1257 | 0 | | defined $xml_raw and $xml_raw =~ /<!ENTITY\s+\w+\s+(?:SYSTEM|PUBLIC)\b/i |
| 1273 | 67 | | not defined $rc and $self->_load_driver("XML::PP") |
| 1305 | 50 | | ref $toml_data eq "HASH" and scalar keys %$toml_data |
| 1344 | 0 | | require File::Basename and "File::Basename"->import |
| 1347 | 67 | | $ENV{'SCRIPT_NAME'} || $0 |
| 1355 | 100 | | $config_file eq $script_name and length $effective_dir == 0 || $effective_dir eq 'File::Spec'->curdir |
| 1360 | 100 | | -f $path and -r $path |
| 1367 | 100 | | $data =~ /^\s*<\?xml/ or $data =~ m[</[^>]+>] |
| 1412 | 100 | | $data or $raw_content =~ /<!ENTITY\s+\w+\s+(?:SYSTEM|PUBLIC)\b/i |
| 1414 | 100 | | eval {
do {
$data = LoadFile($path)
}
} and ref $data eq "HASH" |
| 1447 | 100 | | not $data or ref $data ne "HASH" |
| 1453 | 67 | | not $toml_err and ref $toml_data eq "HASH" and scalar keys %$toml_data |
| 1459 | 100 | | not $data or ref $data ne "HASH" |
| 1470 | 100 | | not $data or ref $data ne "HASH" |
| 1474 | 0 | | defined $xml_raw and not $xml_raw =~ /<!ENTITY\s+\w+\s+(?:SYSTEM|PUBLIC)\b/i |
| 1478 | 67 | | not $data or ref $data ne "HASH" |
| 1497 | 67 | | not $data or ref $data ne "HASH" |
| 1516 | 100 | | $data and ref $data eq "HASH" |
| 1523 | 100 | | not $@ and $logger |
| 100 | | $data and ref $data eq "HASH" |
| 1549 | 100 | | $ref->{$_} //= {} |
| 1577 | 100 | | $ref->{$_} //= {} |
| 1668 | 100 | | defined $ref and ref $ref eq "HASH" and not $self->{'no_fixate'} |
| 1923 | 50 | | $self->{'_source_records'} // [] |
| 1961 | 50 | | $self->{'_source_records'} // [] |
| 2266 | 100 | | $section and exists $config->{$section} |
| 2299 | 100 | | $imports // [] |
| 2448 | 100 | | $2 // "/" |
| 2463 | 100 | | defined $host and length $host |
| 2594 | 33 | | defined $data and ref $data |
| 2608 | 67 | | $data and $data->{'config'} |
| 2670 | 100 | | ref $val eq "HASH" and exists $val->{$part} |