Branch Coverage

blib/lib/Unicode/Collate.pm
Criterion Covered Total %
branch 286 316 90.5


line true false branch
7 0 137 unless (65 == unpack('U', 'A'))
147 9 782 if (exists $hash{'alternate'})
148 1 8 if (exists $hash{'variable'}) { }
155 850 0 if (exists $ChangeOK{$k}) { }
0 0 elsif (exists $ChangeNG{$k}) { }
164 8 783 wantarray ? :
170 0 1026 unless 1 <= $level
173 0 1026 unless $level <= 4
204 0 1010 unless $self->{'derivCode'} = $DerivCode{$self->{'UCA_Version'}}
210 0 1010 unless exists $VariableOK{$self->{'variable'}}
212 891 119 if (not defined $self->{'backwards'}) { }
11 108 elsif (not ref $self->{'backwards'}) { }
229 2 1008 unless defined $self->{'rearrange'}
231 0 1010 unless ref $self->{'rearrange'}
236 13 997 if (@{$self->{'rearrange'};})
242 40 970 if (defined $self->{'normalization'})
244 0 40 if $@
248 32 8 if ($self->{'normalization'} =~ /^(?:NF)D\z/) { }
7 1 elsif ($self->{'normalization'} ne 'prenormalized') { }
257 0 7 if $@
269 127 92 if (not exists $self->{'table'} || defined $self->{'rewrite'} || defined $self->{'undefName'} || defined $self->{'ignoreName'} || defined $self->{'undefChar'} || defined $self->{'ignoreChar'}) { }
279 6 213 if ($self->{'suppress'} and @{$self->{'suppress'};})
284 128 91 unless exists $self->{'table'}
285 171 48 if defined $self->{'table'}
287 151 68 if ($self->{'entry'})
298 212 7 unless exists $self->{'overrideHangul'}
300 186 33 unless exists $self->{'overrideCJK'}
302 9 210 unless exists $self->{'normalization'}
305 217 2 unless exists $self->{'rearrange'}
307 212 7 unless exists $self->{'backwards'}
309 219 0 unless exists $self->{'long_contraction'}
321 171 256 if ($line =~ /^version\s*(\S*)/) { }
0 256 elsif ($line =~ /^variable\s+(\S*)/) { }
0 256 elsif ($line =~ /^alternate\s+(\S*)/) { }
0 256 elsif ($line =~ /^backwards\s+(\S*)/) { }
0 256 elsif ($line =~ /^forwards\s+(\S*)/) { }
0 256 elsif ($line =~ /^rearrange\s+(.*)/) { }
345 127 44 if ($self->{'__useXS'})
348 0 119507 if $line =~ /^\s*#/
350 381 119126 if ($line =~ s/^\s*\@//) { }
363 44 44 if open $fh, $f
366 0 44 unless (defined $f)
372 791 68983 if $line =~ /^\s*#/
374 46 68937 if ($line =~ s/^\s*\@//) { }
394 34292 183454 if (defined $self->{'rewrite'})
398 99 217647 unless $line =~ /^\s*[0-9A-Fa-f]/
401 98516 119131 if $line =~ s/[#%]\s*(.*)//
403 424 217223 if defined $self->{'undefName'} and $name =~ /$self->{'undefName'}/
407 0 217223 unless $k
411 0 217223 unless @uv
413 10 4694 if @uv > 1 and $self->{'suppressHash'} and not $tailoring and exists $self->{'suppressHash'}{$uv[0]}
416 1690 215523 if (defined $self->{'undefChar'} or defined $self->{'ignoreChar'})
421 4 1686 if defined $self->{'undefChar'} and $ele =~ /$self->{'undefChar'}/
425 4 1682 if defined $self->{'ignoreChar'} and $ele =~ /$self->{'ignoreChar'}/
430 424 216785 if defined $self->{'ignoreName'} and $name =~ /$self->{'ignoreName'}/
438 13240 6965 if $wt[0] or $wt[1] or $wt[2]
447 5195 212014 $is_L3_ignorable ? :
450 127398 89811 if (@uv > 1)
451 10747 116651 if (not $self->{'maxlength'}{$uv[0]} or $self->{'maxlength'}{$uv[0]} < @uv)
480 8 57441 if ref $prep
481 421 57028 if ref $norm
511 132 57556 if ($reH and not $wLen)
513 13 167 if (exists $$reH{$src[$i]} and $i + 1 < @src)
522 75 82919 if ($vers <= 20 and _isIllegal($src[$i])) { }
1346 81573 elsif ($ver9) { }
526 321 1025 exists $$map{$src[$i]} ? :
26 1320 if exists $$map{$src[$i]} ? @{$$map{$src[$i]};} == 0 : $uXS && _ignorable_simple($src[$i])
535 197 71321 unless (defined $jcps)
536 15 182 if ($wLen and @buf)
545 13226 58095 if (exists $max->{$jcps})
551 26 13272 unless defined $src[$p]
554 10756 2516 if (exists $map->{$temp_jcps})
568 165 13061 if ($self->{'normalization'})
576 16 252 unless defined $src[$p]
578 33 219 unless $curCC
581 64 155 if ($preCC != $curCC and exists $$map{$jcps . $tail}) { }
588 100 119 unless $long
590 79 40 if ($preCC_uc != $curCC and exists $$map{$jcps_uc . $tail} || exists $$cont{$jcps_uc . $tail}) { }
600 39 126 if (@out_uc and exists $map->{$jcps_uc}) { }
610 32916 38405 exists $map->{$jcps} ? :
334 61664 if (exists $map->{$jcps} ? @{$map->{$jcps};} == 0 : $uXS && !($jcps =~ /;/) && _ignorable_simple($jcps))
612 94 240 if ($wLen and @buf)
618 1976 69011 $wLen ? :
631 1292 11075 if (ref $r) { }
8809 2266 elsif (defined $r) { }
636 4 2262 if 1114111 < $u
653 0 70783 unless defined $u
654 132 122 if $u eq 65535 and $self->{'highestFFFF'}
655 22 47 if $u eq 65534 and $self->{'minimalFFFE'}
656 6 60603 if not $u =~ /;/ and 1114111 < $u and not $out
659 32430 38199 if (exists $map->{$u}) { }
16698 21501 elsif ($uXS and _exists_simple($u)) { }
138 21363 elsif (44032 <= $u and $u <= 55203) { }
67 21296 elsif ($out and 1114111 < $u) { }
667 23 115 if ($hang) { }
10 105 elsif (not defined $hang) { }
675 45 60 if (@decH == 2) { }
677 4 41 if exists $map->{$contract}
679 7 53 if (exists $$max{$decH[0]})
681 1 6 if (exists $map->{$contract}) { }
685 5 1 if exists $map->{$contract}
690 2 58 if (@decH == 3 and exists $$max{$decH[1]})
692 2 0 if exists $map->{$contract}
697 100 36 $uXS && _exists_simple($_) ? :
121 136 exists $map->{$_} ? :
707 11648 9648 if ($cjk and _isUIdeo($u, $vers)) { }
86 9562 elsif ($vers == 8 and defined $cjk and _isUIdeo($u, 0)) { }
734 100 57349 if ($term) { }
740 3 218 if ($preHST and not $curHST or $preHST =~ /L\z/ and $curHST =~ /^T/ or $preHST =~ /V\z/ and $curHST =~ /^L/ or $preHST =~ /T\z/ and $curHST =~ /^[LV]/)
749 66 34 if $preHST
758 7594 49855 if ($iden or $vers >= 26 and $lev == 4)
760 46 7548 if $iden
795 0 2216 unless defined $wt
797 1877 339 grep(($$wt[$_ - 1] != 0), 1 .. $lv) ? :
816 38 1373 if @{$source->[$g];} != @{$substr->[$g];}
820 711 1283 if $source->[$g][$w][$v] != $substr->[$g][$w][$v]
838 12 127 if $self->{'preprocess'}
840 4 123 if $self->{'normCode'}
846 46 77 @_ ? :
847 1 122 if $pos < 0
854 6 117 unless (@$subE)
855 0 0 $len <= $pos ? :
6 0 $pos <= 0 ? :
856 3 1 wantarray ? :
2 4 $glob ? :
860 1 0 wantarray ? :
1 116 if $len < $pos
862 4 112 $pos ? :
863 1 0 wantarray ? :
1 115 unless @$strE
874 384 32 if ($v2i)
875 15 369 if ($var) { }
52 317 elsif (not $wt[0]) { }
879 0 52 if $last_is_variable
886 52 364 if (@subWt and not $var and not $wt[0]) { }
351 13 elsif ($to_be_pushed) { }
887 41 11 if $to_be_pushed
908 1733 67 if ($v2i)
909 316 1417 if ($var) { }
95 1322 elsif (not $wt[0]) { }
913 4 91 if $last_is_variable
920 114 1686 if (@strWt and not $var and not $wt[0]) { }
1420 266 elsif ($to_be_pushed) { }
921 61 53 if $to_be_pushed
925 5 1415 $found_base ? :
926 5 1415 if $found_base
937 144 752 if ($iniPos[0] != -1 and $finPos[$#subWt] != -1 and &_eqArray(\@strWt, \@subWt, $lev))
942 90 54 if ($glob) { }
950 35 19 wantarray ? :
960 15 8 wantarray ? :
38 23 $glob ? :
971 22 5 if (my($pos, $len) = $self->index($_[0], $_[1])) { }
973 18 4 wantarray ? :
1000 2 3 ref $_[2] eq 'CODE' ? :
1002 3 2 if (my($pos, $len) = $self->index($_[0], $_[1])) { }
1003 1 2 if ($code) { }
1022 29 5 ref $_[2] eq 'CODE' ? :
1027 78 20 if ($code) { }