Condition Coverage

lib/JSON/LINQ.pm
Criterion Covered Total %
condition 50 98 51.0


and 3 conditions

line !l l&&!r l&&r condition
21 11 0 0 $] < "5.006" and not defined &warnings::import
199 0 20 36 not ref $v and $v =~ /\A-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?\z/s
385 2 503 2 $pos < $len and substr($line, $pos, 1) eq "\""
392 2 0 2 $pos < $len and substr($line, $pos, 1) eq "\""
406 2 0 0 $pos < $len and substr($line, $pos, 1) eq $sep
410 176 329 1876 $pos < $len and substr($line, $pos, 1) ne $sep
557 19 0 9 @args == 1 and ref $args[0] eq "CODE"
661 0 0 0 defined $item1 and defined $item2
1118 0 0 6 defined $item1 and defined $item2
1221 0 0 0 $predicate and not &$predicate($item)
1242 0 0 0 $predicate and not &$predicate($item)
1613 0 0 4 @items and ref $items[0] eq "HASH"
1725 0 0 40 defined $val && length $val
1753 15 0 23 $fa == 0 and $fb == 0
0 0 15 $fa == 1 and $fb == 1

or 2 conditions

line l !l condition
1556 1 7 $opt{'label_order'} || $opt{'headers'} || undef

or 3 conditions

line l !l&&r !l&&!r condition
425 1 1 124 $value =~ /["\n\r]/ or index($value, $sep) != -1
830 1 6 0 $element_selector ||= sub { $_[0]; }
909 0 36 0 ref $class_or_self || $class_or_self
1095 0 0 5 !(defined $item || defined $value) || defined $item && defined $value && $item eq $value
1106 0 0 6 !(defined $a || defined $b) || defined $a && defined $b && $a eq $b
1108 0 2 0 $comparer ||= sub { my($a, $b) = @_; return !(defined $a || defined $b) || defined $a && defined $b && $a eq $b; }
1117 6 0 1 defined $item1 or defined $item2
1307 10 1 0 $selector ||= sub { $_[0]; }
1319 1 0 0 $selector ||= sub { $_[0]; }
1324 1 2 2 not defined $min or $val < $min
1332 1 0 0 $selector ||= sub { $_[0]; }
1337 1 1 3 not defined $max or $val > $max
1345 1 0 0 $selector ||= sub { $_[0]; }
1361 0 1 0 $selector ||= sub { $_[0]; }
1435 1 0 0 $value_selector ||= sub { $_[0]; }
1455 2 0 0 $value_selector ||= sub { $_[0]; }
1491 1 1 1 $has_elements or $returned_default