Branch Coverage

blib/lib/Perl/Critic/Policy/ControlStructures/ProhibitMutatingListFunctions.pm
Criterion Covered Total %
branch 3 66 4.5


line true false branch
91 355 3 unless $self->{'_all_list_funcs'}{$elem}
92 3 0 unless is_function_call($elem)
95 0 0 unless my $first_arg = first_arg($elem)
96 0 0 unless $first_arg->isa("PPI::Structure::Block")
97 0 0 unless _has_topic_side_effect($first_arg, $doc)
112 0 0 unless $elem->significant
113 0 0 if _is_assignment_to_topic($elem)
114 0 0 if _is_topic_mutating_regex($elem, $doc)
115 0 0 if _is_topic_mutating_func($elem)
116 0 0 if _is_topic_mutating_substr($elem)
125 0 0 unless _is_topic($elem)
128 0 0 if ($sib and $sib->isa("PPI::Token::Operator"))
129 0 0 if _is_assignment_operator($sib)
133 0 0 if ($psib and $psib->isa("PPI::Token::Operator"))
134 0 0 if _is_increment_operator($psib)
144 0 0 unless $elem->isa("PPI::Token::Regexp::Substitute") or $elem->isa("PPI::Token::Regexp::Transliterate")
156 0 0 if ($elem->isa("PPI::Token::Regexp::Transliterate"))
159 0 0 if $mods{'r'}
160 0 0 if ($Perl::Critic::Policy::ControlStructures::ProhibitMutatingListFunctions::EMPTY eq $subs) { }
0 0 elsif ($elem->get_match_string eq $subs) { }
161 0 0 unless $mods{'d'} or $mods{'s'}
163 0 0 unless $mods{'c'} or $mods{'s'}
172 0 0 if ($elem->isa("PPI::Token::Regexp::Substitute"))
173 0 0 unless my $re = $doc->ppix_regexp_from_element($elem)
175 0 0 if $re->modifier_asserted("r")
182 0 0 unless $prevsib
186 0 0 unless _is_binding_operator($prevsib)
198 0 0 unless $elem->isa("PPI::Token::Word")
201 0 0 unless $$mutator_funcs{$elem->content}
203 0 0 unless is_function_call($elem)
208 0 0 unless (defined $first_arg)
221 0 0 if $elem->content ne "substr"
222 0 0 unless is_function_call($elem)