Branch Coverage

blib/lib/Sub/Meta.pm
Criterion Covered Total %
branch 130 130 100.0


line true false branch
36 91 105 @args == 1 ? :
4 196 @args == 1 && (ref $args[0] || '') ne 'HASH' ? :
41 24 172 if exists $args{'sub'}
42 55 141 if exists $args{'subname'}
43 1 195 if exists $args{'stashname'}
44 2 194 if exists $args{'fullname'}
62 4 192 if exists $args->{'invocant'}
63 2 190 if exists $args->{'nshift'}
64 1 26 if exists $args->{'parameters'} and exists $args->{'parameters'}{'nshift'}
65 1 25 if exists $args->{'parameters'} and exists $args->{'parameters'}{'invocant'}
66 20 168 if exists $args->{'is_method'}
73 27 169 if (exists $args->{'parameters'}) { }
78 14 152 $self->is_method ? :
3 166 exists $args->{'nshift'} ? :
82 37 132 if exists $args->{'args'}
83 4 165 if exists $args->{'slurpy'}
84 4 165 if exists $args->{'invocant'}
96 19 21 if $self->has_stashname
97 17 23 if $self->has_subname
103 625 93 if $self->{'subinfo'}
149 9 5 $v =~ /^(.+)::([^:]+)$/ ? :
168 28 175 if (&Scalar::Util::blessed($v)) { }
169 27 1 if ($v->isa('Sub::Meta::Parameters')) { }
196 1 2 if ($self->is_method and $v == 0)
212 21 178 if (&Scalar::Util::blessed($v) and $v->isa('Sub::Meta::Returns')) { }
223 65 28 unless $self->has_sub
225 4 24 $info[1] eq '__ANON__' ? :
228 28 18 $self->sub ? :
229 28 18 $self->sub ? :
230 37 18 $self->sub ? :
231 36 36 $self->sub ? :
232 30 36 $self->sub ? :
236 1 2 unless $self->sub
244 1 2 unless $self->sub
252 1 3 unless $self->sub
274 2 37 unless &Scalar::Util::blessed($other) and $other->isa("Sub::Meta")
276 23 14 if ($self->has_subname) { }
277 3 20 unless $self->subname eq $other->subname
280 4 10 if $other->has_subname
283 5 25 unless $self->is_method eq $other->is_method
285 6 19 unless $self->parameters->is_same_interface($other->parameters)
287 5 14 unless $self->returns->is_same_interface($other->returns)
298 2 37 unless &Scalar::Util::blessed($other) and $other->isa("Sub::Meta")
300 23 14 if ($self->has_subname)
301 3 20 unless $self->subname eq $other->subname
304 5 29 unless $self->is_method eq $other->is_method
306 5 24 unless $self->parameters->is_relaxed_same_interface($other->parameters)
308 3 21 unless $self->returns->is_relaxed_same_interface($other->returns)
320 5 6 $self->has_subname ? :
342 5 10 if $self->has_subname
356 3 19 unless &Scalar::Util::blessed($other) and $other->isa("Sub::Meta")
359 7 12 if ($self->has_subname) { }
360 2 5 unless $self->subname eq $other->subname
364 1 11 if $other->has_subname
367 2 14 unless $self->is_method eq $other->is_method
370 4 10 unless $self->parameters->is_same_interface($other->parameters)
373 3 7 unless $self->returns->is_same_interface($other->returns)
382 3 20 unless &Scalar::Util::blessed($other) and $other->isa("Sub::Meta")
385 7 13 if ($self->has_subname)
386 2 5 unless $self->subname eq $other->subname
390 2 16 unless $self->is_method eq $other->is_method
393 4 12 unless $self->parameters->is_relaxed_same_interface($other->parameters)
396 2 10 unless $self->returns->is_relaxed_same_interface($other->returns)
405 4 32 $self->is_method ? :
409 13 23 if $subname