lib/Getopt/Class.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
condition | 110 | 301 | 36.5 |
line | l | !l | condition |
---|---|---|---|
381 | 0 | 32 | $def->{'alias'} and scalar @{$def->{'alias'};} |
422 | 6 | 0 | not defined $Nice::Try::WANTARRAY and scalar @Nice::Try::LAST_VAL |
425 | 0 | 0 | not defined $Nice::Try::WANTARRAY and scalar @Nice::Try::LAST_VAL |
line | !l | l&&!r | l&&r | condition |
---|---|---|---|---|
88 | 72 | 0 | 42 | $def->{'type'} eq "boolean" and not exists $def->{'mirror'} |
92 | 42 | 0 | 0 | substr($k, 0, 5) eq "with_" and not exists $$dict{"without_" . substr($k, 5)} |
36 | 0 | 6 | substr($k, 0, 8) eq "without_" and not exists $$dict{"with_" . substr($k, 8)} | |
30 | 0 | 6 | substr($k, 0, 7) eq "enable_" and not exists $$dict{"disable_" . substr($k, 7)} | |
24 | 0 | 6 | substr($k, 0, 8) eq "disable_" and not exists $$dict{"enable_" . substr($k, 8)} | |
131 | 0 | 0 | 18 | exists $def->{'default'} and defined $def->{'default'} |
188 | 132 | 0 | 0 | index($k, "-") != -1 and $k eq $k2_dash |
196 | 0 | 114 | 18 | not ref $def->{'alias'} and length $def->{'alias'} |
214 | 48 | 0 | 84 | defined $def->{'default'} and ref $def->{'default'} || length $def->{'default'} |
223 | 18 | 0 | 18 | $def->{'type'} eq "code" and ref $def->{'code'} eq "CODE" |
240 | 60 | 0 | 0 | exists $def->{'code'} and ref $def->{'code'} eq "CODE" |
60 | 0 | 0 | exists $def->{'code'} and ref $def->{'code'} eq "CODE" and ref($opts->{$k2_under} // "") ne "CODE" | |
288 | 120 | 12 | 0 | $def->{'re'} and ref $def->{'re'} ne "Regexp" |
306 | 1 | 0 | 0 | scalar @_ and $self->_is_hash($_[0]) |
319 | 4 | 0 | 0 | not !$p->{'required'} and $def->{'required'} |
321 | 0 | 0 | 0 | $def->{'type'} =~ /^(?:boolean|decimal|integer|string)/ and not length $v->{$f} |
0 | 0 | 0 | $def->{'type'} eq 'hash' || $def->{'type'} eq 'string-hash' and not scalar keys %{$$v{$f};} | |
0 | 0 | 0 | $def->{'type'} eq "array" and not scalar @{$v->{$f};} | |
329 | 3 | 0 | 0 | $def->{'type'} eq "decimal" and not $v->{$f} =~ /^\d+(\.\d{1,12})?$/ |
331 | 1 | 0 | 0 | $def->{'type'} eq "string" and length $v->{$f} |
1 | 0 | 0 | $def->{'type'} eq "string" and length $v->{$f} and not $v->{$f} =~ /$def->{'re'}/ | |
363 | 2 | 2 | 0 | scalar keys %$classes and not exists $classes->{$class} |
417 | 6 | 0 | 0 | $INC{'threads.pm'} and not exists $INC{'forks.pm'} |
422 | 6 | 0 | 0 | defined $Nice::Try::WANT and length $Nice::Try::WANT |
425 | 0 | 0 | 0 | defined $Nice::Try::WANT and length $Nice::Try::WANT |
0 | 6 | 0 | defined $Nice::Try::WANTARRAY || defined $Nice::Try::BREAK && $Nice::Try::BREAK eq 'return' and !&Scalar::Util::blessed($Nice::Try::RETVAL[0]) || &Scalar::Util::blessed($Nice::Try::RETVAL[0]) && !$Nice::Try::RETVAL[0]->isa('Nice::Try::SENTINEL') | |
0 | 0 | 0 | defined $Nice::Try::WANT and length $Nice::Try::WANT | |
0 | 0 | 0 | defined $Nice::Try::RETVAL[0] and $Nice::Try::RETVAL[0] eq "__NEXT__" | |
0 | 0 | 0 | defined $Nice::Try::RETVAL[0] and $Nice::Try::RETVAL[0] eq "__LAST__" | |
0 | 0 | 0 | defined $Nice::Try::RETVAL[0] and $Nice::Try::RETVAL[0] eq "__REDO__" | |
0 | 0 | 0 | defined $Nice::Try::BREAK and $Nice::Try::BREAK eq "return" | |
0 | 6 | 0 | scalar @Nice::Try::VOID and !&Scalar::Util::blessed($Nice::Try::VOID[0]) || &Scalar::Util::blessed($Nice::Try::VOID[0]) && !$Nice::Try::VOID[0]->isa('Nice::Try::SENTINEL') | |
476 | 0 | 1 | 0 | exists $opts->{$key} and !(defined $opts->{$key} && length $opts->{$key}) || $opts->{$key} =~ /^[[:blank:]]*$/ || ref $opts->{$key} eq 'SCALAR' && (!length(${$opts->{$key};}) || ${$opts->{$key};} =~ /^[[:blank:]]*$/) || ref $opts->{$key} eq 'ARRAY' && !scalar(@{$opts->{$key};}) |
535 | 1 | 0 | 0 | scalar @_ and $self->_is_hash($_[0]) |
574 | 105 | 0 | 2 | $def->{'type'} eq 'date' || $def->{'type'} eq 'datetime' and length $opts->{$k} |
591 | 18 | 33 | 3 | exists $def->{'mirror'} and exists $def->{'mirror'}{'value'} |
679 | 6 | 0 | 6 | $call_offset > 0 and $call_data[0] ne $class |
6 | 0 | 6 | $call_offset > 0 and $call_data[0] ne $class and (caller $call_offset - 1)[0] eq $class | |
684 | 0 | 0 | 0 | $call_offset > 0 and (caller $call_offset - 1)[0] ne $class |
712 | 10 | 0 | 0 | exists $def->{'type'} && defined $def->{'type'} |
0 | 0 | 0 | $self->_is_object($self->{$f}) and $self->{$f}->isa("Module::Generic::Boolean") | |
932 | 6 | 0 | 12 | $call_offset > 0 and $call_data[0] ne $class |
6 | 12 | 0 | $call_offset > 0 and $call_data[0] ne $class and (caller $call_offset - 1)[0] eq $class | |
938 | 0 | 0 | 0 | $call_offset > 0 and (caller $call_offset - 1)[0] ne $class |
1014 | 150 | 10 | 92 | $enabled and exists $aliases->{$key} |
line | l | !l | condition |
---|---|---|---|
39 | 6 | 0 | shift @_ || (return $self->error('No hash parameter was provided.')) |
47 | 6 | 0 | $param->{'dictionary'} || (return $self->error('No dictionary was provided to initiate Getopt::Long')) |
71 | 6 | 0 | tie(%options, 'Getopt::Class::Alias', {'dict', $dict, 'aliases', $self->{'aliases'}}) || (return $self->error('Unable to get a Getopt::Class::Alias tie object: ', 'Getopt::Class::Alias'->error)) |
240 | 0 | 0 | $opts->{$k2_under} // "" |
303 | 1 | 0 | shift @_ || (return $self->error('No class was provided to return its definition')) |
307 | 1 | 0 | $self->class($class) || (return) |
308 | 1 | 0 | $self->get_class_values($class) || (return) |
318 | 0 | 4 | $def->{'error'} ||= "does not match requirements" |
359 | 4 | 0 | shift @_ || (return $self->error('No class was provided to return its definition')) |
416 | 6 | 0 | $self->getopt || (return $self->error('No Getopt::Long::Parser object found.')) |
450 | 6 | 0 | $self->getopt || (return $self->error('No Getopt::Long object found.')) |
454 | 6 | 0 | tied %$opts || (return $self->error('Unable to get the tie object for the options value hash.')) |
521 | 6 | 0 | 'Getopt::Class::Values'->new({'data', $opts, 'dict', $dict, 'aliases', $aliases, 'debug', $self->{'debug'}}) || (return $self->pass_error('Getopt::Class::Values'->error)) |
528 | 1 | 0 | shift @_ || (return $self->error('No class was provided to return its definition')) |
530 | 1 | 0 | $self->class($class) || (return) |
538 | 1 | 3 | &Scalar::Util::reftype($opts->{$f}) // "" |
945 | 6 | 0 | $bitmask // 0 |
947 | 6 | 0 | $opts->{'dict'} || (return 'Getopt::Class::Alias'->error('No dictionary was provided to Getopt::Class:Alias')) |
979 | 0 | 6 | $opts->{'debug'} || 0 |
1006 | 252 | 0 | $val // "undef" |
1038 | 92 | 0 | $val // "" |
1044 | 69 | 0 | $val // "" |
69 | 0 | $val // "" |
line | l | !l&&r | !l&&!r | condition |
---|---|---|---|---|
123 | 0 | 0 | 18 | $self->_is_scalar($def->{'default'}) || $self->_is_code($def->{'default'}) || ref $def->{'default'} |
214 | 60 | 24 | 0 | ref $def->{'default'} || length $def->{'default'} |
223 | 6 | 0 | 96 | $def->{'type'} eq "array" or $def->{'type'} eq "file-array" |
0 | 6 | 0 | $def->{'type'} eq "date" or $def->{'type'} eq "datetime" | |
235 | 6 | 0 | 0 | exists $def->{'min'} or exists $def->{'max'} |
321 | 0 | 0 | 0 | $def->{'type'} eq 'hash' || $def->{'type'} eq 'string-hash' |
0 | 0 | 0 | $def->{'type'} =~ /^(?:boolean|decimal|integer|string)/ and not length $v->{$f} or $def->{'type'} eq 'hash' || $def->{'type'} eq 'string-hash' and not scalar keys %{$$v{$f};} | |
0 | 0 | 0 | $def->{'type'} =~ /^(?:boolean|decimal|integer|string)/ and not length $v->{$f} or $def->{'type'} eq 'hash' || $def->{'type'} eq 'string-hash' and not scalar keys %{$$v{$f};} or $def->{'type'} eq "array" and not scalar @{$v->{$f};} | |
425 | 6 | 0 | 0 | defined $Nice::Try::WANTARRAY || defined $Nice::Try::BREAK && $Nice::Try::BREAK eq 'return' |
0 | 0 | 6 | !&Scalar::Util::blessed($Nice::Try::RETVAL[0]) || &Scalar::Util::blessed($Nice::Try::RETVAL[0]) && !$Nice::Try::RETVAL[0]->isa('Nice::Try::SENTINEL') | |
0 | 0 | 0 | not defined $Nice::Try::BREAK or $Nice::Try::BREAK eq "return" | |
0 | 0 | 6 | !&Scalar::Util::blessed($Nice::Try::VOID[0]) || &Scalar::Util::blessed($Nice::Try::VOID[0]) && !$Nice::Try::VOID[0]->isa('Nice::Try::SENTINEL') | |
476 | 0 | 0 | 0 | !(defined $opts->{$key} && length $opts->{$key}) || $opts->{$key} =~ /^[[:blank:]]*$/ || ref $opts->{$key} eq 'SCALAR' && (!length(${$opts->{$key};}) || ${$opts->{$key};} =~ /^[[:blank:]]*$/) || ref $opts->{$key} eq 'ARRAY' && !scalar(@{$opts->{$key};}) |
571 | 107 | 0 | 25 | length $opts->{$k} or $def->{'default'} |
574 | 0 | 2 | 105 | $def->{'type'} eq 'date' || $def->{'type'} eq 'datetime' |
0 | 6 | 93 | $def->{'type'} eq "hash" or $def->{'type'} eq "string-hash" | |
7 | 0 | 18 | $def->{'type'} eq "integer" or $def->{'decimal'} | |
653 | 0 | 6 | 0 | ref $that || $that |
663 | 6 | 0 | 0 | ref $self || $self |
684 | 6 | 0 | 0 | $call_data[9] or $call_offset > 0 and (caller $call_offset - 1)[0] ne $class |
701 | 10 | 0 | 0 | ref $self || $self |
712 | 0 | 0 | 0 | $def->{'type'} eq "boolean" or $self->_is_object($self->{$f}) and $self->{$f}->isa("Module::Generic::Boolean") |
0 | 0 | 0 | $def->{'type'} eq "string" or &Scalar::Util::reftype($self->{$f}) eq "SCALAR" | |
0 | 0 | 0 | $def->{'type'} eq "integer" or $def->{'type'} eq "decimal" | |
0 | 0 | 0 | $def->{'type'} eq "date" or $def->{'type'} eq "datetime" | |
0 | 0 | 0 | $def->{'type'} eq "hash" or $def->{'type'} eq "string-hash" | |
775 | 0 | 6 | 0 | ref $self || $self |
792 | 0 | 0 | 0 | caller eq "Getopt::Class::Value" or not $self->{'enable'} |
807 | 0 | 66 | 153 | caller eq "Getopt::Class::Value" or not $self->{'enable'} |
824 | 0 | 234 | 87 | caller eq "Getopt::Class::Value" or not $self->{'enable'} |
841 | 0 | 6 | 1 | caller eq "Getopt::Class::Value" or not $self->{'enable'} |
865 | 0 | 0 | 0 | caller eq "Getopt::Class::Value" or not $self->{'enable'} |
881 | 0 | 114 | 0 | caller eq "Getopt::Class::Value" or not $self->{'enable'} |
921 | 0 | 6 | 0 | ref $this || $this |
938 | 0 | 0 | 0 | $call_data[9] or $call_offset > 0 and (caller $call_offset - 1)[0] ne $class |
962 | 6 | 0 | 0 | $opts->{'aliases'} || do { |
1017 | 92 | 0 | 0 | $aliases->{$key} || do { |
1027 | 92 | 0 | 0 | $def->{'alias'} || do { |