Branch Coverage

blib/lib/Language/GolfScript.pm
Criterion Covered Total %
branch 509 834 61.0


line true false branch
45 0 6 if ("@_" =~ /debug/i)
48 0 6 if ("@_" =~ /verbose/i)
51 0 6 if ("@_" =~ /count/i)
54 0 6 if ("@_" =~ /timeout\s*=?\s*(\d+)/i)
97 3 26 is_block($element) ? :
13 29 is_string($element) ? :
12 42 is_array($element) ? :
126 1 1648 if (@_ == 1 and not defined $_[0])
127 0 1 if ($DEBUG)
134 0 1730 if ($DEBUG)
139 0 1648 if $DEBUG > 1
146 16 13 if $Language::GolfScript::LB[$i] < $sz
148 0 13 if ($DEBUG > 1)
153 1018 1 if ($sz > 0) { }
0 1 elsif ($DEBUG) { }
155 0 1018 if ($DEBUG)
158 0 1018 if $DEBUG > 1
162 0 0 if $DEBUG > 1
170 0 132 if ($DEBUG)
177 0 1 if $DEBUG
178 0 1 if ($DEBUG) { }
194 0 0 if ($token =~ /^\#/)
197 0 0 if substr($next_token, -1) eq "\n"
206 0 0 unless ($token =~ /\S/)
209 0 0 if @tokens and $tokens[0] =~ /^\#/
214 0 0 if (length $stripped < length $code)
235 73 513 if (is_array($a)) { }
21 492 elsif (is_block($a)) { }
79 413 elsif (is_string($a)) { }
413 0 elsif (is_number($a)) { }
250 0 0 if $DEBUG > 1
285 0 129 if ($DEBUG)
291 0 129 if ($DEBUG)
314 0 0 if ($INPUT eq '__NOT_INITIALIZED__')
315 0 0 if (-t STDIN) { }
323 0 0 if $DEBUG
333 315 0 if $TIMEOUT > 0
346 0 0 if ($COUNT)
347 0 0 if ($Math::BigInt::VERSION) { }
355 0 0 if $TIMEOUT > 0
359 0 0 if ($mode eq 'test')
364 0 0 if ($COUNT)
385 0 478 if $DEBUG
389 0 0 if ($DEBUG and $DEBUG > 2 || $token =~ /\S/)
392 2 2202 if ($token eq '#') { }
50 2152 elsif ($token eq '}') { }
50 2102 elsif ($token eq '{') { }
96 2006 elsif (defined $active_block) { }
7 1999 elsif ($token eq ':') { }
876 1123 elsif (defined $DISPATCH{$token}) { }
398 0 2 if ($DEBUG and not $comment =~ /^#;/)
405 0 50 if (defined $active_block) { }
411 0 50 if (defined $active_block)
420 0 7 if ($DEBUG)
424 2 5 if (is_block($element)) { }
434 788 334 if (defined $element)
444 109 1014 if ($token =~ /^'/ and $token =~ /'$/) { }
7 1007 elsif ($token =~ /^"/ and $token =~ /"$/) { }
673 334 elsif ($token =~ /^-?\d+$/) { }
334 0 elsif ($token eq ' ') { }
482 2 48 if ($char eq '#' and $chars[0] eq '{')
490 2 20 if ($char eq $stack[-1]) { }
0 20 elsif ($char eq '\\') { }
0 20 elsif ($char eq q[']) { }
0 40 elsif ($char eq '{' and $stack[-1] eq '}') { }
492 2 0 if @stack == 0
502 0 2 if ($DEBUG)
506 1 1 if ($@)
512 43 5 if ($char ne '\\')
516 0 5 if (@chars == 0)
521 2 3 if (defined $escapes{$escaped_char})
526 0 3 if ($escaped_char =~ /[ceux]/)
530 0 3 unless ($escaped_char =~ /[0-7]/)
535 3 0 if (@chars and $chars[0] =~ /[0-7]/)
537 3 0 if ($chars[0] =~ /[0-7]/)
564 1 4 if (is_array($a)) { }
1 3 elsif (is_string($a)) { }
1 2 elsif (is_block($a)) { }
2 0 elsif (is_number($a)) { }
570 0 1 if ($DEBUG > 1)
579 3 5 if (is_array($a)) { }
3 2 elsif (is_string($a)) { }
0 2 elsif (is_block($a)) { }
2 0 elsif (is_number($a)) { }
609 0 11 if ($DEBUG > 1)
621 3 19 if (is_array($aa)) { }
1 18 elsif (is_string($aa)) { }
2 16 elsif (is_block($aa)) { }
16 0 elsif (is_number($aa)) { }
630 1 1 if (is_array($bb)) { }
1 0 elsif (is_string($bb)) { }
646 13 139 if (is_array($element)) { }
656 5 57 if (is_array($a)) { }
5 52 elsif (is_block($a)) { }
7 45 elsif (is_string($a)) { }
45 0 elsif (is_number($a)) { }
658 2 3 if (is_array($b)) { }
1 2 elsif (is_string($b)) { }
1 1 elsif (is_block($b)) { }
1 0 elsif (is_number($b)) { }
675 2 3 if (is_array($b)) { }
1 2 elsif (is_block($b)) { }
1 1 elsif (is_string($b)) { }
1 0 elsif (is_number($b)) { }
690 2 5 if (is_array($b)) { }
3 2 elsif (is_string($b)) { }
1 1 elsif (is_block($b)) { }
1 0 elsif (is_number($b)) { }
702 1 44 if (is_array($b)) { }
1 43 elsif (is_string($b)) { }
1 42 elsif (is_block($b)) { }
42 0 elsif (is_number($b)) { }
720 4 19 if (is_array($a)) { }
4 15 elsif (is_string($a)) { }
4 11 elsif (is_block($a)) { }
11 0 elsif (is_number($a)) { }
721 1 3 if (is_array($b)) { }
1 2 elsif (is_string($b)) { }
1 1 elsif (is_block($b)) { }
1 0 elsif (is_number($b)) { }
731 1 3 if (is_array($b)) { }
1 2 elsif (is_string($b)) { }
1 1 elsif (is_block($b)) { }
1 0 elsif (is_number($b)) { }
742 1 3 if (is_array($b)) { }
1 2 elsif (is_string($b)) { }
1 1 elsif (is_block($b)) { }
1 0 elsif (is_number($b)) { }
753 1 10 if (is_array($b)) { }
1 9 elsif (is_block($b)) { }
1 8 elsif (is_string($b)) { }
8 0 elsif (is_number($b)) { }
770 3 32 if (is_array($a)) { }
2 30 elsif (is_block($a)) { }
4 26 elsif (is_string($a)) { }
26 0 elsif (is_number($a)) { }
772 1 2 if (is_array($b)) { }
1 1 elsif (is_string($b)) { }
0 1 elsif (is_block($b)) { }
1 0 elsif (is_number($b)) { }
784 1 1 if (is_array($b)) { }
1 0 elsif (is_string($b)) { }
0 0 elsif (is_block($b)) { }
0 0 elsif (is_number($b)) { }
798 2 2 if (is_array($b)) { }
0 2 elsif (is_block($b)) { }
1 1 elsif (is_string($b)) { }
1 0 elsif (is_number($b)) { }
811 1 25 if (is_array($b)) { }
2 23 elsif (is_block($b)) { }
1 22 elsif (is_string($b)) { }
22 0 elsif (is_number($b)) { }
829 1 9 if (is_array($a)) { }
2 7 elsif (is_string($a)) { }
5 2 elsif (is_block($a)) { }
2 0 elsif (is_number($a)) { }
831 1 0 if (is_array($b)) { }
0 0 elsif (is_string($b) or is_block($b) or is_number($b)) { }
838 0 2 if (is_array($b)) { }
2 0 elsif (is_string($b)) { }
0 0 elsif (is_block($b)) { }
0 0 elsif (is_number($b)) { }
843 1 1 if $b =~ /.$a$/
854 3 2 if (is_array($b)) { }
2 0 elsif (is_block($b)) { }
0 0 elsif (is_string($b)) { }
0 0 elsif (is_number($b)) { }
876 0 0 if (@c)
886 1 1 if (is_array($b)) { }
0 1 elsif (is_block($b)) { }
0 1 elsif (is_string($b)) { }
1 0 elsif (is_number($b)) { }
898 0 0 if ($a <= 0)
904 0 0 if (length $b > 0)
917 0 16 if (is_array($a)) { }
1 15 elsif (is_string($a)) { }
1 14 elsif (is_block($a)) { }
14 0 elsif (is_number($a)) { }
921 0 1 if (is_array($b)) { }
0 1 elsif (is_block($b)) { }
1 0 elsif (is_string($b)) { }
0 0 elsif (is_number($b)) { }
936 0 1 if (is_string($b))
940 1 0 if (is_array($b)) { }
0 0 elsif (is_block($b)) { }
0 0 elsif (is_number($b)) { }
950 0 3 if ($DEBUG > 1)
973 3 11 if (is_array($b)) { }
0 11 elsif (is_string($b)) { }
0 11 elsif (is_block($b)) { }
11 0 elsif (is_number($b)) { }
974 2 1 if ($a < 0)
982 0 0 if ($a < 0)
1000 1 1 if (is_array($a)) { }
0 1 elsif (is_block($a)) { }
0 1 elsif (is_string($a)) { }
1 0 elsif (is_number($a)) { }
1002 1 0 if (is_array($b)) { }
1013 1 0 if (is_number($b)) { }
1027 1 2 if (is_number($a)) { }
2 0 elsif (is_array($a)) { }
0 0 elsif (is_string($a)) { }
0 0 elsif (is_block($a)) { }
1046 0 0 if (is_array($a)) { }
0 0 elsif (is_block($a)) { }
0 0 elsif (is_string($a)) { }
0 0 elsif (is_number($a)) { }
1048 0 0 if (is_array($b)) { }
1059 0 0 if (is_array($b) or is_block($b)) { }
0 0 elsif (is_string($b)) { }
0 0 elsif (is_number($b)) { }
1072 4 9 if (is_array($a)) { }
0 9 elsif (is_block($a)) { }
2 7 elsif (is_string($a)) { }
7 0 elsif (is_number($a)) { }
1074 2 2 if (is_array($b)) { }
1 1 elsif (is_string($b)) { }
1 0 elsif (is_block($b)) { }
1089 0 0 if (is_array($b)) { }
1097 1 1 if (is_array($b)) { }
1 0 elsif (is_string($b)) { }
0 0 elsif (is_block($b)) { }
1110 0 7 if (is_array($b) or is_block($b)) { }
0 7 elsif (is_string($b)) { }
7 0 elsif (is_number($b)) { }
1116 0 7 if ($DEBUG > 1)
1135 0 35 if (is_number($b) and not is_number($a))
1139 2 33 if (is_string($a))
1142 6 29 if (is_array($a)) { }
0 29 elsif (is_block($a) or is_string($a)) { }
1 28 elsif (is_array($b)) { }
0 28 elsif (is_string($b)) { }
1 27 elsif (is_block($b)) { }
27 0 elsif (is_number($b)) { }
1143 2 4 if (is_string($b))
1146 3 3 _element_compare($b, $a) < 0 ? :
1151 0 1 if $a < 0
1152 1 0 if ($a > 0)
1161 23 4 _element_compare($b, $a) < 0 ? :
1168 2 19 if (is_string($a))
1171 6 15 if (is_array($a)) { }
0 15 elsif (is_block($a)) { }
1 14 elsif (is_array($b)) { }
0 14 elsif (is_string($b)) { }
1 13 elsif (is_block($b)) { }
13 0 elsif (is_number($b)) { }
1172 2 4 if (is_string($b))
1175 2 4 _element_compare($b, $a) > 0 ? :
1180 0 1 if $a < 0
1190 3 10 _element_compare($b, $a) > 0 ? :
1198 2 5 if (is_number($b) and not is_number($a))
1200 0 7 if (is_string($a))
1203 0 7 if (is_array($a)) { }
0 7 elsif (is_block($a)) { }
7 0 elsif (is_number($a)) { }
1204 0 0 if (is_string($b))
1207 0 0 _element_compare($a, $b) == 0 ? :
1212 3 4 if (is_array($b)) { }
2 2 elsif (is_string($b) or is_block($b)) { }
2 0 elsif (is_number($b)) { }
1213 1 2 if $a < 0
1219 1 1 _element_compare($a, $b) == 0 ? :
1226 2 6 if (is_array($a)) { }
1 5 elsif (is_block($a)) { }
0 5 elsif (is_string($a)) { }
5 0 elsif (is_number($a)) { }
1231 0 1 unless (is_array($b))
1239 4 6 if (is_true($d))
1264 0 13 if (is_block($a) and is_block($b))
1268 2 11 if (is_string($a))
1272 2 11 if (is_block($a)) { }
5 6 elsif (is_array($a)) { }
6 0 elsif (is_number($a)) { }
1275 0 2 if (is_string($b))
1279 2 0 if (is_array($b)) { }
0 0 elsif (is_number($b)) { }
1285 2 8 if (is_true($d))
1290 2 0 if (defined $found)
1299 1 4 if (is_string($b)) { }
1 3 elsif (is_array($b)) { }
3 0 elsif (is_number($b)) { }
1309 2 9 if (_element_compare($c[$i], $b) == 0)
1324 1 4 if (is_array($a)) { }
0 4 elsif (is_block($a)) { }
2 2 elsif (is_string($a)) { }
2 0 elsif (is_number($a)) { }
1343 2 3 if (is_array($a)) { }
0 3 elsif (is_block($a)) { }
1 2 elsif (is_string($a)) { }
2 0 elsif (is_number($a)) { }
1346 2 0 if defined $elem
1353 1 0 if defined $b
1388 12 14 if (is_true($condition)) { }
1389 0 12 if ($DEBUG)
1392 1 11 if (is_block($if_true_element)) { }
1398 0 14 if ($DEBUG)
1401 1 13 if (is_block($if_false_element)) { }
1411 0 0 if (is_array($a)) { }
0 0 elsif (is_block($a)) { }
0 0 elsif (is_string($a)) { }
0 0 elsif (is_number($a)) { }
1429 0 100 if (not is_number($a)) { }
1440 0 1 unless is_block($block)
1446 0 5 if $DEBUG
1462 0 0 unless (is_block($condition) and is_block($body))
1478 0 0 unless (is_block($condition) and is_block($body))
1492 0 2 if (is_array($a) or is_string($a) or is_block($a)) { }
1497 1 1 if ($a < 0) { }
1507 0 2 unless (is_array($a))
1516 3 3 unless (is_array($aa))
1517 3 0 if (is_string($aa)) { }
1528 1 1 if ($is_string)
1538 0 3 if (is_string($base)) { }
3 0 elsif (is_number($base)) { }
1540 0 0 if (length $c > 1)
1544 0 0 if ($DEBUG)
1551 2 1 if (is_array($operand)) { }
0 1 elsif (is_string($operand)) { }
0 1 elsif (is_block($operand)) { }
1 0 elsif (is_number($operand)) { }
1581 43 58 if (is_array($a) and @$a == 0 or is_string($a) and get_string($a) eq '' or is_block($a) and get_block($a) eq '' or is_number($a) and get_number($a) == 0) { }
1593 14 12 is_true($a) ? :
1600 12 16 if ($d != 0)
1601 0 12 if ($DEBUG > 1)
1614 0 2 if ($DEBUG)
1631 13 433 if (is_array($a)) { }
12 421 elsif (is_string($a)) { }
1 420 elsif (is_block($a)) { }
420 0 elsif (is_number($a)) { }
1632 12 1 if (is_array($b)) { }
1 0 elsif (is_string($b)) { }
0 0 elsif (is_block($b)) { }
1643 0 12 if (is_array($b)) { }
1 11 elsif (is_block($b)) { }
0 11 elsif (is_number($b)) { }
11 0 elsif (is_string($b)) { }
1655 1 0 if (is_array($b)) { }
0 0 elsif (is_string($b)) { }
0 0 elsif (is_block($b)) { }
1665 0 420 if (is_array($b)) { }
0 420 elsif (is_string($b)) { }
0 420 elsif (is_block($b)) { }
420 0 elsif (is_number($b)) { }
1686 1 15 if (($GS_TYPE_PRIORITY{$type0} || 0) < ($GS_TYPE_PRIORITY{$type1} || 0))
1687 0 1 if ($DEBUG > 1)
1700 0 6 if ($DEBUG)
1702 3 3 if $type0 eq $type1
1706 1 2 if ($type0 eq 'number') { }
1 1 elsif ($type1 eq 'number') { }
0 1 elsif ($type0 eq 'array' and $type1 eq 'string') { }
1 0 elsif ($type0 eq 'string' and $type1 eq 'array') { }
0 0 elsif ($type0 eq 'array' and $type1 eq 'block') { }
0 0 elsif ($type0 eq 'block' and $type1 eq 'array') { }
0 0 elsif ($type0 eq 'string' and $type1 eq 'block') { }
0 0 elsif ($type0 eq 'block' and $type1 eq 'string') { }
1707 0 1 if ($type1 eq 'array') { }
1 0 elsif ($type1 eq 'string') { }
0 0 elsif ($type1 eq 'block') { }
1708 0 0 if $DEBUG
1711 0 1 if $DEBUG
1715 0 0 if $DEBUG
1719 0 1 if ($type0 eq 'array') { }
1 0 elsif ($type0 eq 'string') { }
0 0 elsif ($type0 eq 'block') { }
1720 0 0 if $DEBUG
1723 0 1 if $DEBUG
1726 0 0 if $DEBUG
1730 0 0 if $DEBUG
1733 0 1 if $DEBUG
1736 0 0 if $DEBUG
1739 0 0 if $DEBUG
1742 0 0 if $DEBUG
1745 0 0 if $DEBUG
1756 0 51 if ($DEBUG > 1)
1775 2 110 if (is_array($elem)) { }
1 109 elsif (is_string($elem)) { }
1 108 elsif (is_block($elem)) { }
108 0 elsif (is_number($elem)) { }
1796 4 2 if ($i > 0)
1798 0 6 if (is_array($elem)) { }
0 6 elsif (is_block($elem)) { }
0 6 elsif (is_string($elem)) { }
6 0 elsif (is_number($elem)) { }
1827 6 4 if ($i > 0)
1830 1 9 if (is_array($elem)) { }
1 8 elsif (is_block($elem)) { }
1 7 elsif (is_string($elem)) { }
7 0 elsif (is_number($elem)) { }
1861 1 15 if ($char eq "\n") { }
0 15 elsif ($char eq "\t") { }
0 15 elsif (ord $char < 32 or ord $char >= 127) { }
0 15 elsif ($char =~ /['"\\]/) { }
1899 6 3 if $numElem++
1900 2 7 if (is_array($elem)) { }
7 0 elsif (is_number($elem)) { }
0 0 elsif (is_string($elem)) { }
0 0 elsif (is_block($elem)) { }
1959 6 0 is_number($_) ? :
1972 0 1 if (is_array($elem)) { }
0 1 elsif (is_string($elem)) { }
0 1 elsif (is_block($elem)) { }
1 0 elsif (is_number($elem)) { }
1994 1 5 if (is_array($elem)) { }
0 5 elsif (is_string($elem)) { }
0 5 elsif (is_block($elem)) { }
5 0 elsif (is_number($elem)) { }
2099 3 4 if (_element_compare($$array1[$i + $j], $$array2[$j]) != 0)
2104 2 3 if ($found >= 0)
2117 2 0 if ($found > 0) { }
2134 22 2 is_true($a) ? :
2153 2 28 if (_element_compare($elem, $c) == 0)
2168 0 1 if (_element_compare($c, $elem1) == 0)
2173 2 37 if (_element_compare($elem1, $elem2) == 0)
2187 10 75 if (_element_compare($elem1, $elem2) == 0)
2192 0 8 if (_element_compare($elem1, $c) == 0)
2200 10 75 if _element_compare($elem1, $elem2) == 0
2203 6 64 if _element_compare($c, $elem2) == 0