Branch Coverage

blib/lib/Switch/Right.pm
Criterion Covered Total %
branch 107 258 41.4


line true false branch
86 0 0 if warnings::enabled("redefine")
0 0 if "" ne $info->{'package'} and warnings::enabled("redefine")
0 0 if (not $info) { }
0 0 elsif ($info->{'keyword'} ne 'multi') { }
0 0 elsif ($info->{'package'} ne caller()) { }
0 7 if (*{(caller()) . '::smartmatch';}{'CODE'}) { }
2474 1616 if (@_ < $variant->{'min'})
93 1523 if (@_ > $variant->{'max'})
1173 350 if (ref $handler)
7 0 if ($redefining)
185 0 0 if ($source =~ /$VALIDATE_PURE_GIVEN/u)
194 0 0 $after_a_statement ? :
195 0 0 if ($_->{'TYPE'} eq 'when') { }
0 0 elsif ($_->{'TYPE'} eq 'default') { }
0 0 elsif ($_->{'TYPE'} eq 'given') { }
197 0 0 if ($_->{'WHENTRUE'}) { }
0 0 elsif ($_->{'WHENFALSE'}) { }
210 0 0 if ($after_a_statement) { }
220 0 0 if ($after_a_statement) { }
229 0 0 !$after_a_statement ? :
246 0 0 unless (defined $REPLACEMENT_CODE)
268 0 0 if (exists $result{'BLOCK'}) { }
0 0 elsif (exists $result{'EXPR'}) { }
340 0 0 if (defined $matched{'BLOCK'} and defined $matched{'EXPR'}) { }
0 0 elsif (defined $matched{'MODIFIER'}) { }
0 0 elsif (exists $matched{'INVALID_BLOCK'}) { }
350 0 0 if ($WHENTRUE) { }
0 0 elsif ($WHENFALSE) { }
397 0 0 if (defined $matched{'BLOCK'}) { }
454 0 0 $TYPE eq 'default' ? :
463 0 0 if ($KIND eq 'when') { }
0 0 elsif ($KIND eq 'given') { }
465 0 0 defined $AFTERGIVEN ? :
559 0 0 if ($MOD_EXPR =~ /$JUNCTIVE_EXPR/u)
583 0 0 if ($EXPR =~ /\.\./u and $EXPR =~ /$FLIP_FLOP/u)
590 0 0 $EXPR =~ /[\%]/u && $EXPR =~ /$HASH_SLICE/u ? :
0 0 $EXPR =~ /[\@]/u && $EXPR =~ /$ARRAY_SLICE/u ? :
0 0 $EXPR =~ /[\@%]/u && $EXPR =~ /$CONTAINER_VARIABLE/u ? :
614 0 0 if warnings::enabled("Multi::Dispatch::noncontiguous")
0 7 if ($Multi::Dispatch::closed{'multi'}{'smartmatch'}{'Switch::Right'}) { }
0 0 if warnings::enabled("redefine")
0 0 if "" ne $info->{'package'} and warnings::enabled("redefine")
0 0 if (not $info) { }
0 0 elsif ($info->{'keyword'} ne 'multi') { }
0 0 elsif ($info->{'package'} ne __PACKAGE__) { }
0 7 if (*smartmatch{'CODE'}) { }
603732 201244 if (@_ < $variant->{'min'})
0 201244 if (@_ > $variant->{'max'})
201244 0 if (ref $handler)
7 0 if ($redefining)
616 6 201933 unless $Multi::Dispatch::_____static0000000000_init++
622 153 201786 unless defined $right
625 1421 200365 if builtin::is_bool($right)
629 98 200267 if ($right_type ne "REGEXP" and builtin::blessed($right))
637 20 200247 $left_is_obj ? :
640 261 281 if $right_type eq "CODE"
647 0 4 if (created_as_number $right) { }
648 0 0 unless overload::Method($left, "0+")
652 0 4 unless overload::Method($left, "\"\"")
657 85 199289 unless defined $left
662 778 198511 if (created_as_number $right)
663 14 764 if (not &looks_like_number($left)) { }
0 764 elsif ($Switch::Right::_use_integer) { }
682 11 120 if $left == $right
684 14 106 if @{$left;} != @{$right;}
688 3 103 if $Sm4r7m4tCh::seen{"L$left"}++ or $Sm4r7m4tCh::seen{"R$right"}++
692 29 418 unless smartmatch($left->[$n], $right->[$n])
696 20 78 if $left == $right
698 22 56 if keys %{$left;} != keys %{$right;}
702 0 56 if $Sm4r7m4tCh::seen{"L$left"}++ or $Sm4r7m4tCh::seen{"R$right"}++
707 15 1393 unless exists $right->{$key} and smartmatch($left->{$key}, $right->{$key})
723 0 0 if warnings::enabled("Multi::Dispatch::noncontiguous")
0 7 if ($Multi::Dispatch::closed{'multi'}{'smartmatch'}{'Switch::Right'}) { }
0 0 if warnings::enabled("redefine")
0 0 if "" ne $info->{'package'} and warnings::enabled("redefine")
0 7 if (not $info) { }
0 7 elsif ($info->{'keyword'} ne 'multi') { }
0 7 elsif ($info->{'package'} ne __PACKAGE__) { }
7 0 if (*smartmatch{'CODE'}) { }
0 0 if (@_ < $variant->{'min'})
0 0 if (@_ > $variant->{'max'})
0 0 if (ref $handler)
0 7 if ($redefining)
71 318 if @_ > 2 and (builtin::reftype($_[2]) // "") ne "ARRAY"
18 300 unless eval { do { $junction =~ /^(?:any|all|none)$/u } }
733 62 148 if smartmatch($left, $rval)
739 23 105 unless smartmatch($left, $rval)
745 3 130 if smartmatch($left, $rval)
751 0 0 if warnings::enabled("Multi::Dispatch::noncontiguous")
0 7 if ($Multi::Dispatch::closed{'multi'}{'smartmatch'}{'Switch::Right'}) { }
0 0 if warnings::enabled("redefine")
0 0 if "" ne $info->{'package'} and warnings::enabled("redefine")
0 7 if (not $info) { }
0 7 elsif ($info->{'keyword'} ne 'multi') { }
0 7 elsif ($info->{'package'} ne __PACKAGE__) { }
7 0 if (*smartmatch{'CODE'}) { }
0 0 if (@_ < $variant->{'min'})
0 0 if (@_ > $variant->{'max'})
0 0 if (ref $handler)
0 7 if ($redefining)
0 89 if @_ > 1 and (builtin::reftype($_[1]) // "") ne "ARRAY"
0 89 unless eval { do { $junction =~ /^(?:any|all|none)$/u } }
760 16 42 if smartmatch($lval, $right)
766 12 45 unless smartmatch($lval, $right)
772 3 54 if smartmatch($lval, $right)
779 0 0 if warnings::enabled("Multi::Dispatch::noncontiguous")
0 7 if ($Multi::Dispatch::closed{'multi'}{'smartmatch'}{'Switch::Right'}) { }
0 0 if warnings::enabled("redefine")
0 0 if "" ne $info->{'package'} and warnings::enabled("redefine")
0 7 if (not $info) { }
0 7 elsif ($info->{'keyword'} ne 'multi') { }
0 7 elsif ($info->{'package'} ne __PACKAGE__) { }
7 0 if (*smartmatch{'CODE'}) { }
0 0 if (@_ < $variant->{'min'})
0 0 if (@_ > $variant->{'max'})
0 0 if (ref $handler)
0 7 if ($redefining)
0 78 if @_ > 1 and (builtin::reftype($_[1]) // "") ne "ARRAY"
0 78 if @_ > 3 and (builtin::reftype($_[3]) // "") ne "ARRAY"
0 78 unless eval { do { $ljunction =~ /^(?:any|all|none)$/u } }
0 78 unless eval { do { $rjunction =~ /^(?:any|all|none)$/u } }
789 19 554 if smartmatch($lval, $rval)
795 11 14 unless smartmatch($lval, $rval)
807 920 197071 if smartmatch($lval, $rval)
815 2 26 unless smartmatch($lval, $rval)
821 3 13 if smartmatch($lval, $rval)
828 11 11 unless smartmatch($lval, $rval)
837 7 17 if smartmatch($lval, $rval)
846 2 19 if smartmatch($lval, $rval)