Branch Coverage

lib/XML/Compile/Cache.pm
Criterion Covered Total %
branch 99 244 40.5


line true false branch
59 0 0 ref $_[0] eq 'HASH' ? :
2 0 !defined($_[0]) ? :
0 2 @_ > 1 ? :
69 0 0 ref $_[0] eq 'HASH' ? :
2 0 !defined($_[0]) ? :
1 2 @_ > 1 ? :
74 1 0 if $a eq 'AUTO'
77 1 0 ref $a eq 'ARRAY' ? :
89 1 6 @_ ? :
103 0 0 $anyelem eq 'SLOPPY' ? :
2 0 $anyelem eq 'ATTEMPT' ? :
116 1 3 unless @_ or defined $first
120 0 0 ref $first eq 'HASH' ? :
1 0 ref $first eq 'ARRAY' ? :
2 1 @_ ? :
130 1 2 if (my $def = $a->{$prefix}) { }
131 0 1 if ($def->{'uri'} ne $ns)
148 1 2 if @_
149 0 2 unless $self->{'XCC_namespaces'}
160 0 0 unless my $def = $_[0]{'XCC_namespaces'}{$_[1]}
168 0 0 if (my $def = $self->prefix($base)) { }
169 0 0 if $def->{'uri'} eq $ns
176 0 0 unless $base =~ /[0-9]$/
178 0 0 if $def->{'uri'} eq $ns
193 3 1 if not defined $prefix or $namespaces->{$uri}
195 0 1 if (my $def = $self->prefix($prefix)) { }
196 0 0 if $def->{'uri'} eq $uri
205 0 0 if $def->{'uri'} eq $uri
221 0 0 @_ == 2 ? :
222 0 0 unless $ns
224 0 0 unless defined $prefix
228 0 0 length $prefix ? :
238 0 0 if ($need_r)
240 0 0 if (defined $usens)
242 0 0 if $usens eq $myns
248 0 0 if ($need_w)
250 0 0 if (defined $usens)
252 0 0 if $usens eq $myns
262 0 2 unless @$f == @$s
264 0 0 !defined($s->[$i]) ? :
0 0 !defined($f->[$i]) ? :
0 0 if !defined($f->[$i]) ? defined $s->[$i] : (!defined($s->[$i]) ? 1 : $f->[$i] ne $s->[$i])
276 4 4 if (exists $self->{'XCC_dropts'}{$type}) { }
2 2 elsif ($self->allowUndeclared) { }
1 1 elsif (exists $self->{'XCC_dwopts'}{$type}) { }
277 0 4 if @_
281 2 2 if $readers->{$type}
284 1 1 if (my $ur = $self->{'XCC_uropts'}{$type}) { }
288 0 0 $args{'is_type'} ? :
0 1 unless &_same_params($ur, \@_)
300 0 3 $args{'is_type'} ? :
311 4 4 if (exists $self->{'XCC_dwopts'}{$type}) { }
2 2 elsif ($self->{'XCC_undecl'}) { }
1 1 elsif (exists $self->{'XCC_dropts'}{$type}) { }
312 0 4 if @_
316 2 2 if $writers->{$type}
319 1 1 if (my $ur = $self->{'XCC_uwopts'}{$type}) { }
323 0 0 $args{'is_type'} ? :
0 1 unless &_same_params($ur, \@_)
338 0 3 $args{'is_type'} ? :
345 0 0 unless $action =~ /^[A-Z]*$/
356 2 0 @_ % 2 ? :
362 0 0 $need eq 'WRITERS' ? :
2 0 $need eq 'READERS' ? :
0 2 $need eq 'RW' ? :
365 0 2 if (ref $set eq 'HASH') { }
382 3 3 $action eq 'READER' || $action eq 'PERL' ? :
390 22 0 ref $_ eq 'ARRAY' ? :
2 22 !defined($_) ? :
395 0 3 unless defined $val
397 0 3 if ($opt eq 'prefixes') { }
0 3 elsif ($opt eq 'hooks' or $opt eq 'hook') { }
0 3 elsif ($opt eq 'typemap') { }
0 3 elsif ($opt eq 'key_rewrite') { }
0 3 elsif ($opt eq 'xsi_type') { }
0 3 elsif ($opt eq 'ignore_unused_tags') { }
403 0 0 ref $hooks eq 'ARRAY' ? :
0 0 if $hooks
408 0 0 if (ref $val eq 'ARRAY') { }
421 0 0 ref $val eq 'ARRAY' ? :
425 0 0 ref $a eq 'ARRAY' ? :
431 0 0 defined $opts{$opt} ? :
444 0 0 unless $hooks
447 0 0 ref $hooks eq 'ARRAY' ? :
448 0 0 if (my $types = $hook->{'type'}) { }
0 0 elsif (my $ext = $hook->{'extends'}) { }
450 0 0 ref $_ eq 'Regexp' ? :
0 0 ref $types eq 'ARRAY' ? :
465 0 3 unless my $need = $need{$_[1]}
473 0 0 @_ > 1 ? :
480 0 6 unless defined $elem
491 0 0 unless defined $type
505 0 3 @opts == 1 ? :
506 0 3 if ref $opts eq 'HASH'
510 0 3 ref $names eq 'ARRAY' ? :
514 2 1 if ($need_r)
515 0 2 if defined $self->{'XCC_dropts'}{$type}
520 2 1 if ($need_w)
521 0 2 if defined $self->{'XCC_dwopts'}{$type}
533 0 28 unless defined $name
536 10 18 if substr($name, 0, 1) eq '{'
539 18 0 $name =~ /^([\w-]*)\:(\S*)$/ ? :
541 0 18 unless ($def)
542 0 0 if $prefix eq ''
549 18 0 length $local ? :
555 3 0 @_ % 2 ? :
557 0 3 exists $args{'show_declared'} ? :
559 0 3 unless $decl
571 3 15 if /^namespace\:\s+(\S+)/
572 12 6 /^\s+(\S+)\s*$/ ? :
577 2 7 $self->{'XCC_dropts'}{$type} ? :
3 9 $self->{'XCC_readers'}{$type} ? :
581 2 7 $self->{'XCC_dwopts'}{$type} ? :
3 9 $self->{'XCC_writers'}{$type} ? :
593 0 0 if (defined(my $blocked = $read->blocked($path, 'complexType', $type)))
599 0 0 if ($@)
605 0 0 ref $nodes eq 'ARRAY' ? :
607 0 0 @convert == 1 ? :
615 0 0 if ($@) { }
618 0 0 @convert == 1 ? :
622 0 0 ref $nodes eq 'ARRAY' ? :
625 0 0 @convert == 1 ? :