Branch Coverage

blib/lib/String/Multibyte.pm
Criterion Covered Total %
branch 265 334 79.3


line true false branch
46 8 140 if (ref $charset) { }
49 140 0 $String::Multibyte::hasFS ? :
52 0 140 unless $self = do $pm
54 0 148 unless defined $$self{'regexp'}
56 148 0 unless $] < 5.005
59 144 4 if $verbose
60 1 147 unless defined $$self{'charset'}
70 0 47127 unless my $re = $$obj{'regexp'}
75 43 64748 if CORE::length $str
86 0 118 unless my $re = $$obj{'regexp'}
89 0 118 if ($$obj{'verbose'} and not $obj->islegal($str))
110 0 54 unless my $re = $$obj{'regexp'}
113 0 54 if ($$obj{'verbose'} and not $obj->islegal($str))
131 4681 8906 unless $cnt < $len
143 0 553 unless my $re = $$obj{'regexp'}
148 0 553 if ($$obj{'verbose'} and not $obj->islegal($str, $sub))
152 486 67 @_ == 3 ? :
154 117 436 if ($sub eq '')
155 30 22 $len < $pos ? :
65 52 $pos <= 0 ? :
157 32 404 if $len < $pos
160 1806 0 $str =~ s/^$re// ? :
164 324 70855 if $str =~ /^$pat/ and _check_n($re, $str, $sub, $sublen)
165 70855 0 $str =~ s/^$re// ? :
167 324 80 CORE::length $str ? :
175 0 534 unless my $re = $$obj{'regexp'}
180 0 534 if ($$obj{'verbose'} and not $obj->islegal($str, $sub))
184 466 68 @_ == 3 ? :
185 117 417 if ($sub eq '')
186 54 10 $len <= $pos ? :
53 64 $pos <= 0 ? :
188 122 295 if $pos < 0
193 3805 68016 if $str =~ /^$pat/ and _check_n($re, $str, $sub, $sublen)
195 71821 0 $str =~ s/^$re// ? :
206 5 79 ref $list eq 'ARRAY' ? :
218 0 46 unless my $re = $$obj{'regexp'}
222 0 46 if ($$obj{'verbose'} and not $obj->islegal($str, $lst))
229 25 35137 unless exists $lst{$1}
241 0 38 unless my $re = $$obj{'regexp'}
245 0 38 if ($$obj{'verbose'} and not $obj->islegal($str, $lst))
252 18 35091 if exists $lst{$1}
263 0 12319 unless my $re = $$obj{'regexp'}
269 3570 8749 @_ > 3 ? :
271 3910 8409 ref $arg ? :
272 0 12319 if ($$obj{'verbose'} and not $obj->islegal($str, $rep))
277 460 11859 if $slen < $off
278 384 11935 if (@_ == 2) { }
281 40 11895 if $off + $slen < 0 and $len + $slen < 0
282 50 11885 if 0 <= $len and $off + $len + $slen < 0
284 550 11769 if ($except)
285 0 550 if (@_ > 3) { }
291 5732 6037 $off < 0 ? :
292 5260 6509 $len < 0 ? :
293 370 11399 if $ini < 0
294 2940 8829 if $ini > $fin
295 0 11769 if $slen < $ini
296 3132 8637 if $slen < $fin
302 87888 34180 if ($cnt < $ini) { }
26576 7604 elsif ($cnt < $fin) { }
311 3910 7859 ref $arg ? :
315 3570 8199 if (@_ > 3)
328 0 6478 unless my $re = $$obj{'regexp'}
331 2558 3920 exists $$obj{'hyphen'} ? :
332 2558 3920 exists $$obj{'escape'} ? :
334 0 6478 if ($$obj{'verbose'} and not $obj->islegal($str))
337 22 6456 unless (defined $$obj{'nextchar'})
338 22 0 wantarray ? :
343 567 21106 if ($range) { }
344 0 567 if ($s eq "$esc$hyp") { }
0 567 elsif ($s eq "$esc$esc") { }
349 567 0 @retv ? :
357 603 20503 if ($s eq $hyp) { }
64 20439 elsif ($s eq "$esc$hyp") { }
36 20403 elsif ($s eq "$esc$esc") { }
368 36 6420 if $range
369 329 9 @retv ? :
6118 338 wantarray ? :
376 57 510 if (defined $$obj{'cmpchar'} and &{$$obj{'cmpchar'};}($fr, $to) > 0) { }
378 4 53 unless $rev
389 563 11385 if $c eq $to
391 0 11385 unless defined $c
393 53 510 $rev ? :
403 0 2956 unless my $re = $$obj{'regexp'}
407 2905 49 ref $str ? :
0 2956 if ($$obj{'verbose'} and not $obj->islegal(ref $str ? $$str : $str))
411 0 2956 if (defined $_[2] and $_[2] =~ /o/) { }
412 0 0 defined $_[2] ? :
429 0 3082 unless my $re = $$obj{'regexp'}
433 2930 152 @_ ? :
435 0 3082 if ($$obj{'verbose'} and not $obj->islegal($fr, $to))
445 5 3077 ref $fr eq 'ARRAY' ? :
446 15 3071 $R ? :
449 3 3079 ref $to eq 'ARRAY' ? :
450 15 3069 $R ? :
459 960 13981 if exists $hash{$fr[$i]}
460 440 1100 $d ? :
9404 1540 defined $to[$i] ? :
552 2485 $d && !$c ? :
10944 3037 @to ? :
468 722 0 ref $str ? :
0 722 if ($v and not $obj->islegal(ref $str ? $$str : $str))
473 722 0 ref $str ? :
474 8 18960 $h ? :
4092 18968 exists $hash{$1} ? :
476 2 0 wantarray ? :
720 0 ref $str ? :
2 720 $h ? :
483 360 4 ref $str ? :
0 364 if ($v and not $obj->islegal(ref $str ? $$str : $str))
490 360 4 ref $str ? :
491 0 9512 $h ? :
7932 1580 @to ? :
6320 3192 $now eq $pre ? :
2068 9512 exists $hash{$1} ? :
497 0 0 wantarray ? :
360 4 ref $str ? :
0 364 $h ? :
504 720 4 ref $str ? :
0 724 if ($v and not $obj->islegal(ref $str ? $$str : $str))
510 720 4 ref $str ? :
511 0 4128 $h ? :
842 3286 $hash{$1} eq '' || $hash{$1} eq $pre ? :
4128 18964 exists $hash{$1} ? :
517 0 0 wantarray ? :
720 4 ref $str ? :
0 724 $h ? :
524 364 0 ref $str ? :
0 364 if ($v and not $obj->islegal(ref $str ? $$str : $str))
529 364 0 ref $str ? :
530 20 9480 $h ? :
7912 1588 ($h ? ++$cnt{$1} : ++$cnt, @to) ? :
2066 9500 exists $hash{$1} ? :
534 4 0 wantarray ? :
360 0 ref $str ? :
4 360 $h ? :
541 739 16823 ref $str ? :
0 17564 if ($v and not $obj->islegal(ref $str ? $$str : $str))
546 739 16825 ref $str ? :
547 164 61840 $h ? :
62004 66083 exists $hash{$1} ? :
551 19 2 wantarray ? :
735 16808 ref $str ? :
21 17543 $h ? :
558 908 0 $mod == 0 || $mod == 2 ? :
364 908 $mod == 1 ? :
724 1272 $mod == 4 || $mod == 6 ? :
364 1996 $mod == 5 ? :
722 2360 $mod == 3 || $mod == 7 ? :
565 0 1097 unless my $re = $$obj{'regexp'}
570 0 1097 if ($$obj{'verbose'} and not $obj->islegal($str, $sub))
573 510 587 if ($str eq '')
574 290 220 wantarray ? :
576 40 547 if ($sub eq '' and $lim <= 0)
578 10 10 $lim < 0 ? :
20 20 wantarray ? :
581 41 506 if ($lim == 1)
582 21 20 wantarray ? :
586 126 380 CORE::length $sub ? :
588 126 380 if (CORE::length $sub) { }
593 652 727 if ($str =~ /^$pat/ and _check_n($re, $str, $sub, $sublen)) { }
727 0 elsif ($str =~ s/^($re)//) { }
594 0 0 CORE::length $str > 15 ? :
0 652 unless $str =~ s/^$pat//
602 0 0 CORE::length $str > 10 ? :
609 0 4180 unless $str =~ s/^($re)//
614 462 44 if CORE::length $str
615 24 482 if ($lim == 0)