Condition Coverage

blib/lib/Type/Params/Signature.pm
Criterion Covered Total %
condition 125 179 69.8


and 2 conditions

line l !l condition
215 572 124 0 exists $self->{$_} and &$typify(\$self->{$_})

and 3 conditions

line !l l&&!r l&&r condition
77 317 2 12 $self->{'named_to_list'} and not is_ArrayRef($self->{'named_to_list'})
99 152 8 166 defined $self->{'bless'} and is_BoolLike($self->{'bless'})
160 106 60 defined $self->{'bless'} and is_BoolLike($self->{'bless'}) and $self->{'bless'}
106 11 49 defined $self->{'bless'} and is_BoolLike($self->{'bless'}) and $self->{'bless'} and not $self->{'named_to_list'}
151 0 24 1 $constraint->type_parameter and $constraint->type_parameter->{'uniq'} == &Any()->{'uniq'}
179 256 69 1 $self->{'slurpy'} and $self->{'slurpy'}->has_default
186 256 69 1 $self->{'slurpy'} and $self->{'slurpy'}->optional
230 756 0 2 is_HashRef($list->[0]) and exists $list->[0]{'slurpy'}
0 0 2 is_HashRef($list->[0]) and exists $list->[0]{'slurpy'} and not is_Bool($list->[0]{'slurpy'})
239 66 6 2 exists $list->[0]{'slurpy'} and not is_Bool($list->[0]{'slurpy'})
260 331 0 423 is_HashRef($_[0]) and not exists $_[0]{'slurpy'}
448 317 4 1 defined $self->strictness and $self->strictness eq 1
472 460 8 1 $seen_optional and not $is_named
489 148 167 5 $is_named and $self->list_to_named
549 46 21 81 defined $max_args and $min_args == $max_args
28 28 11 $min_args and defined $max_args
733 0 45 1 $real_type and $real_type->{'uniq'} == &Any()->{'uniq'}
788 148 0 0 $self->has_strictness and not $self->strictness
797 148 0 0 defined $self->strictness && $self->strictness ne 1
813 285 9 47 $self->{'_is_signature_for'} and $self->next
820 275 22 44 $self->bless and $self->oo_trace
823 0 0 44 defined $package and defined $subname
889 20 39 8 $self->{'_is_signature_for'} and $self->has_returns_list || $self->has_returns_scalar
0 0 51 $args{'allow_full_statements'} and not $args{'is_early'} || !exists $args{'is_early'}
1013 0 0 320 my $package = $self->package and my $subname = $self->subname
1014 41 149 130 $package ne "__ANON__" and $subname ne "__ANON__"
1110 35 0 23 $self->is_named and $self->bless
35 7 16 $self->is_named and $self->bless and not $self->named_to_list
1183 47 0 0 defined $self->strictness and $self->strictness eq 1
1195 47 0 0 defined $self->strictness and $self->strictness eq 1
1207 47 0 0 defined $self->strictness and $self->strictness eq 1

or 2 conditions

line l !l condition
54 331 0 $self->{'parameters'} ||= []
55 0 331 $self->{'class_prefix'} ||= "Type::Params::OO::Klass"
91 0 38 $self->{'head'} ||= []
575 28 28 $min_args || 0
28 28 $min_args || 0
860 16 8 $self->constructor || 'new'
1067 0 49 $ENV{'PERL_TYPE_PARAMS_XS'} || 'XS'

or 3 conditions

line l !l&&r !l&&!r condition
56 0 4 0 $self->{'next'} ||= delete $self->{'goto_next'}
101 25 24 0 $klass_cache{$klass_key} ||= sprintf("%s%d", $self->{'class_prefix'}, ++$klass_id)
151 1 23 1 $constraint->type_parameter and $constraint->type_parameter->{'uniq'} == &Any()->{'uniq'} or $constraint->my_slurp_into eq "HASH"
173 3 0 211 $parameter->type->is_strictly_a_type_of(&Slurpy()) or $parameter->{'slurpy'}
210 0 7 0 $self->{'returns_scalar'} ||= $r
211 0 7 0 $self->{'returns_list'} ||= &ArrayRef()->of($r)
283 121 37 198 delete $opts->{'positional'} || delete $opts->{'pos'}
285 2 20 334 delete $opts->{'multiple'} || delete $opts->{'multi'}
287 158 176 22 $positional or $named
334 20 2 $positional or $named or $multiple
356 46 23 102 $_[0]->slurpy || grep($_->might_supply_new_value, @{$_[0]->parameters;})
361 0 342 2 $_[0]{'coderef'} ||= $_[0]->_build_coderef
366 5 339 0 $self->description || sprintf(q[parameter validation for '%s::%s'], $self->package || '', $self->subname || '__ANON__')
746 29 0 0 $real_type || $constraint
888 19 0 274 $args{'is_early'} or not exists $args{'is_early'}
889 8 0 39 $self->has_returns_list || $self->has_returns_scalar
0 0 51 $args{'is_early'} || !exists $args{'is_early'}
990 769 8 0 $args{'display_var'} || $args{'varname'}
1030 16 49 0 $self->{'class_attributes'} ||= $self->_build_class_attributes
1068 0 0 49 $env eq "PP" or $ENV{'PERL_ONLY'}
1183 0 47 0 defined $self->strictness and $self->strictness eq 1 or not $self->has_strictness
1195 0 47 0 defined $self->strictness and $self->strictness eq 1 or not $self->has_strictness
1207 0 47 0 defined $self->strictness and $self->strictness eq 1 or not $self->has_strictness