Branch Coverage

blib/lib/App/yajg.pm
Criterion Covered Total %
branch 90 114 78.9


line true false branch
27 114 24 unless ref $_[0] eq 'ARRAY' and @{$_[0];}
32 3 3 wantarray ? :
4 6 ref $_[0] eq 'HASH' ? :
4 10 ref $_[0] eq 'ARRAY' ? :
41 0 0 if utf8::is_utf8($_)
43 0 0 if $@
44 0 0 unless ref $_
60 117 348 if (s/^\{(.*)\}$/$1/u) { }
114 234 elsif (s/^\[(.*)\]$/$1/u) { }
116 118 elsif (s[^/(.*)/$][$1]u) { }
62 3 114 if ($args->{'ignore_case'})
76 42 243 unless length $_
77 3 240 unless (/^[+-]?[0-9]++$/u)
84 5 109 if $err or not @$list
93 3 113 if $args->{'ignore_case'}
94 2 114 unless eval { do { $_ = qr/$pat/u } }
102 3 115 if ($args->{'ignore_case'})
119 107 124 unless @_
121 18 106 unless ref $data ~~ ['HASH', 'ARRAY']
126 57 49 if (ref $data eq 'HASH') { }
49 0 elsif (ref $data eq 'ARRAY') { }
129 2 31 unless exists $data->{$val}
131 2 29 if @_ and not defined $selected
138 0 8 if @_ and not defined $selected
141 4 2 %selected ? :
147 0 12 if @_ and not defined $selected
150 6 1 %selected ? :
159 0 7 unless @slice
163 0 23 if @_ and not defined $selected
166 7 0 @selected ? :
172 8 20 if @_ and not defined $selected
175 5 3 @selected ? :
178 1 23 unless $val =~ /^[+-]?[0-9]++$/u
179 2 21 unless exists $data->[$val]
181 0 21 if @_ and not defined $selected
194 9 112 unless defined $key_pat or defined $val_pat
200 0 112 if (++$r > 300)
206 12 100 unless ref $data ~~ ['ARRAY', 'HASH']
210 0 100 if $visited->{$data}
214 61 39 if (ref $data eq 'HASH') { }
39 0 elsif (ref $data eq 'ARRAY') { }
217 41 96 if (defined $key_pat and not defined $val_pat and /$key_pat/u or not ref $data->{$_} and defined $data->{$_} and !defined($key_pat) || /$key_pat/u and !defined($val_pat) || ($data->{$_} =~ /$val_pat/u xor $i) or $i and defined $val_pat and !defined($data->{$_}) || ref $data->{$_} && !&size($data->{$_})) { }
46 50 elsif (ref $data->{$_} ~~ ['ARRAY', 'HASH']) { }
237 16 30 if &size($filtered)
247 32 73 if (ref $_ ~~ ['HASH', 'ARRAY']) { }
26 51 elsif (defined $val_pat and defined $_ && !ref($_) && (/$val_pat/u xor $i) || $i && (!defined($_) || ref $_ && !&size($_))) { }
249 15 17 if &size($filtered)
267 0 10 if @_ == 1
271 9 1 if (@_ > 2)
276 0 10 unless &size($hooks)
278 0 10 if (++$r > 300)
283 3 7 if (ref $_[0] eq 'HASH') { }
1 6 elsif (ref $_[0] eq 'ARRAY') { }
284 1 2 if $$visited{$_[0]}
289 0 1 if $$visited{$_[0]}
307 0 0 unless $supported->{$output}
310 0 0 if $@