Condition Coverage

blib/lib/Sub/MultiMethod.pm
Criterion Covered Total %
condition 44 68 64.7


and 3 conditions

line !l l&&!r l&&r condition
74 25 86 0 @$mmc and $spec->{'method'} != $mmc->[0]{'method'}
305 8 0 0 is_HashRef($sig[0]) and not $sig[0]{'slurpy'}
341 1 0 1 $spec{'is_monomethod'} && $alias eq $aliases[0]
352 2 13 34 defined $sub_name and not $spec{'no_dispatcher'}
354 8 34 5 not $hooked{$target} and "Role::Hooks"->is_role($target)
407 0 0 2 $target and $sub_name
431 23 2 16 $existing and $me->known_dispatcher($existing)
477 13 7 39 $is_method and is_Object($invocants[0])
13 2 5 $is_method and &is_ClassName($invocants[0])
524 78 0 1 is_HashRef($sig[0]) && !$sig[0]{'slurpy'}
547 372 0 0 $candidate->{'compiled'}{'_pure_named'} and not $argv_maybe_named
0 365 7 defined $candidate->{'compiled'}{'min_args'} and $candidate->{'compiled'}{'min_args'} > $argc
8 355 2 defined $candidate->{'compiled'}{'max_args'} and $candidate->{'compiled'}{'max_args'} < $argc

or 2 conditions

line l !l condition
48 314 37 $mm->{$method_key} ||= []
183 9 27 $args->{'api_call'} || 'install_candidate'
273 0 2 $spec{'alias'} ||= []
632 56 0 $invocants || []

or 3 conditions

line l !l&&r !l&&!r condition
92 11 0 48 is_Int($method_name) or is_ScalarRef($method_name)
177 0 0 36 ref $target or not defined $target
331 13 5 0 $check ||= Type::Params::compile(@sig)
372 0 5 0 is_CodeRef($$sub_name) or is_Object($$sub_name)
420 41 0 0 exists &mro::get_linear_isa or eval {
534 1 0 78 $opt->{'head'} or $opt->{'tail'}
641 0 0 0 defined $candidate->{'score'} or defined $candidate->{'height'}