| line |
true |
false |
branch |
|
47
|
0 |
84 |
if defined $opts->{'parser'} |
|
55
|
0 |
84 |
@_ > 1 && &blessed($_[0]) && $_[0]->isa('XML::LibXML::Simple') ? : |
|
62
|
0 |
79 |
unless my $xml = $self->_get_xml($target, $opts) |
|
65
|
0 |
79 |
if (my $cb = $opts->{'hooknodes'}) |
|
70
|
1 |
78 |
if ($opts->{'keeproot'}) |
|
72
|
1 |
0 |
$opts->{'forcearray_always'} && ref $top ne 'ARRAY' ? : |
|
83
|
1 |
81 |
unless defined $source |
|
86
|
1 |
81 |
if $source eq '-' |
|
100
|
73 |
7 |
$source =~ /^\s*\<.*?\>\s*$/s ? : |
|
|
2 |
80 |
ref $source ? : |
|
|
0 |
82 |
ref $source eq 'SCALAR' ? : |
|
|
0 |
82 |
&blessed($source) && ($source->isa('XML::LibXML::Document') || $source->isa('XML::LibXML::Element')) ? : |
|
102
|
79 |
0 |
if $xml->isa('XML::LibXML::Document') |
|
110
|
82 |
0 |
ref $_[0] eq 'HASH' ? : |
|
|
0 |
82 |
@_ != 1 ? : |
|
128
|
1 |
167 |
unless @_ % 2 == 0 |
|
135
|
1 |
118 |
unless $known_opts{$lkey} |
|
151
|
1 |
0 |
if $script_dir |
|
161
|
48 |
34 |
if (defined $opt{'contentkey'}) { } |
|
169
|
2 |
80 |
unless ref $opt{'searchpath'} eq 'ARRAY' |
|
173
|
6 |
76 |
if (ref $fa) { } |
|
174
|
5 |
1 |
ref $fa eq 'ARRAY' ? : |
|
175
|
3 |
5 |
if (ref $_ eq 'Regexp') { } |
|
187
|
3 |
79 |
unless ref $ka |
|
189
|
62 |
20 |
if (ref $ka eq 'ARRAY') { } |
|
|
20 |
0 |
elsif (ref $ka eq 'HASH') { } |
|
190
|
60 |
2 |
if (@$ka) { } |
|
207
|
2 |
80 |
if ref $va eq 'ARRAY' |
|
212
|
0 |
82 |
unless not $opt{'grouptags'} or ref $opt{'grouptags'} eq 'HASH' |
|
222
|
4 |
3 |
@_ ? : |
|
226
|
4 |
3 |
if ($filename eq $file) { } |
|
|
2 |
1 |
elsif (-e $file) { } |
|
229
|
2 |
4 |
if -e $fullpath |
|
243
|
97 |
443 |
if (defined $d->{$k}) { } |
|
|
2 |
441 |
elsif (ref $v eq 'ARRAY') { } |
|
|
24 |
417 |
elsif (ref $v eq 'HASH' and $k ne $opts->{'contentkey'} and $opts->{'forcearray_always'}) { } |
|
|
12 |
405 |
elsif ($opts->{'forcearray_elem'}{$k} or grep(($k =~ /$_/), @{$$opts{'forcearray_regex'};})) { } |
|
245
|
46 |
51 |
if (ref $d->{$k} eq 'ARRAY') { } |
|
265
|
0 |
0 |
length $uri ? : |
|
270
|
0 |
383 |
unless $xml->isa('XML::LibXML::Element') |
|
275
|
366 |
17 |
unless ($opts->{'noattr'}) |
|
281
|
0 |
236 |
if ($hooks and my $hook = $$hooks{$attr->unique_key}) { } |
|
283
|
0 |
0 |
unless defined $value |
|
290
|
2 |
234 |
if not ref $value and $opts->{'normalisespace'} == 2 |
|
295
|
0 |
236 |
$opts->{'nsstrip'} ? : |
|
|
0 |
236 |
$opts->{'nsexpand'} ? : |
|
|
0 |
236 |
!$attr->isa('XML::LibXML::Attr') ? : |
|
307
|
536 |
304 |
if ($child->isa('XML::LibXML::Text')) |
|
312
|
0 |
304 |
unless $child->isa('XML::LibXML::Element') |
|
318
|
0 |
304 |
if ($hooks and my $hook = $$hooks{$child->unique_key}) { } |
|
323
|
0 |
0 |
if not defined $v and $opts->{'suppressempty'} |
|
327
|
0 |
304 |
$opts->{'nsstrip'} ? : |
|
|
0 |
304 |
$opts->{'nsexpand'} ? : |
|
334
|
14 |
369 |
if defined $text and $opts->{'normalisespace'} == 2 |
|
336
|
2 |
134 |
$opts->{'forcecontent'} ? : |
|
|
136 |
247 |
if $nr_attrs + $nr_elems == 0 and defined $text |
|
339
|
34 |
213 |
if defined $text and $nr_elems == 0 |
|
344
|
101 |
146 |
if (keys %data == 1) |
|
346
|
7 |
94 |
if $opts->{'valueattrlist'}{$k} |
|
351
|
233 |
7 |
if ($opts->{'keyattr'}) |
|
353
|
84 |
375 |
if ref $val eq 'ARRAY' |
|
360
|
21 |
219 |
if (my $gr = $opts->{'grouptags'}) |
|
364
|
35 |
8 |
unless my $sub = $gr->{$key} |
|
365
|
0 |
8 |
if (ref $val eq 'ARRAY') { } |
|
367
|
0 |
0 |
unless keys %$_ != 1 |
|
|
0 |
0 |
if grep {not exists $_->{$sub} unless keys %$_ != 1;} @$val |
|
371
|
0 |
8 |
unless ref $val eq 'HASH' and keys %$val == 1 |
|
374
|
7 |
1 |
if $gr->{$key} eq $child_key |
|
383
|
12 |
82 |
if keys %data == 1 and exists $data{'anon'} and ref $data{'anon'} eq 'ARRAY' |
|
386
|
0 |
2 |
if (not keys %data and exists $opts->{'suppressempty'}) |
|
388
|
0 |
0 |
defined $sup && $sup eq '' ? : |
|
392
|
228 |
0 |
if (my $va = $opts->{'valueattrlist'}) |
|
394
|
0 |
4 |
unless $va->{$key} and ref $val eq 'HASH' and keys %$val == 1 |
|
401
|
0 |
0 |
$opts->{'forcecontent'} ? : |
|
|
2 |
0 |
!defined($text) ? : |
|
|
226 |
2 |
$nr_elems + $nr_attrs ? : |
|
423
|
0 |
84 |
unless my $ka = $opts->{'keyattr'} |
|
425
|
28 |
56 |
if (ref $ka eq 'HASH') { } |
|
426
|
8 |
20 |
unless my $newkey = $ka->{$name} |
|
430
|
2 |
42 |
unless (ref $h eq 'HASH' and defined $h->{$key}) |
|
431
|
1 |
1 |
if $^W |
|
436
|
2 |
40 |
if (ref $val) |
|
437
|
1 |
1 |
if $^W |
|
442
|
2 |
38 |
if $opts->{'normalisespace'} == 1 |
|
445
|
1 |
39 |
if $^W and defined $out{$val} |
|
448
|
4 |
36 |
if $flag eq '-' |
|
449
|
38 |
2 |
if $flag ne '+' |
|
458
|
28 |
50 |
unless ref $h eq 'HASH' |
|
462
|
39 |
42 |
unless defined $val |
|
464
|
2 |
40 |
if (ref $val) |
|
465
|
1 |
1 |
if $^W and not $default_keys |
|
471
|
2 |
38 |
if $opts->{'normalisespace'} == 1 |
|
474
|
1 |
3 |
if $^W and $out{$val} |
|
485
|
7 |
27 |
unless $opts->{'collapseagain'} |
|
500
|
0 |
35 |
unless defined $v |
|
501
|
14 |
5 |
if ref $v eq 'HASH' and keys %$v == 1 and exists $v->{$contentkey} |
|
502
|
0 |
21 |
if ref $v eq 'HASH' and not keys %$v |