Branch Coverage

blib/lib/YAML/PP/Constructor.pm
Criterion Covered Total %
branch 71 80 88.7


line true false branch
15 0 35 $ENV{'YAML_PP_LOAD_DEBUG'} || $ENV{'YAML_PP_LOAD_TRACE'} ? :
16 0 35 $ENV{'YAML_PP_LOAD_TRACE'} ? :
25 166 20 unless (defined $duplicate_keys)
29 1 185 if ($preserve == 1)
34 1 185 unless $cyclic_refs{$cyclic_refs}
37 0 185 if (keys %args)
96 12 1364 if ($event->{'version_directive'})
99 6 6 if ($self->{'schemas'}{$version}) { }
116 0 1349 unless $last->{'type'} eq "document"
117 0 1349 if (@$stack)
141 24 564 if ($preserve_order || $preserve_style || $preserve_alias and not tied %$data)
144 15 573 if ($preserve_style)
150 49 539 if (defined(my $anchor = $event->{'anchor'}))
151 6 43 if ($preserve_alias)
153 5 1 unless (exists $self->anchors->{$anchor})
168 0 578 unless $last->{'type'} eq "mapping"
174 6 1210 if (ref $key eq 'YAML::PP::Type::MergeKey') { }
176 1 5 if ((&reftype($merge) || '') eq 'HASH') { }
4 1 elsif ((&reftype($merge) || '') eq 'ARRAY') { }
181 5 2 if ((&reftype($item) || '') eq 'HASH') { }
199 8 1 unless (exists $$data->{$key})
221 47 516 if (defined(my $anchor = $last->{'event'}{'anchor'}))
241 9 795 if ($preserve_style or $preserve_alias and not tied @$data)
248 21 783 if (defined(my $anchor = $event->{'anchor'}))
249 6 15 if ($preserve_alias)
251 5 1 unless (exists $self->anchors->{$anchor})
264 0 797 unless $last->{'type'} eq "sequence"
273 21 776 if (defined(my $anchor = $last->{'event'}{'anchor'}))
291 83 4323 if ($preserve_style || $preserve_alias and not ref $value)
296 17 66 if ($preserve_style)
299 6 77 if ($preserve_alias and defined $event->{'anchor'})
301 5 1 unless (exists $self->anchors->{$anchor})
308 82 4324 if (defined(my $name = $event->{'anchor'}))
318 99 1 if (my $anchor = $self->anchors->{$name}) { }
321 9 90 unless ($anchor->{'finished'})
323 3 6 if ($cyclic_refs ne "allow")
324 1 2 if ($cyclic_refs eq "fatal")
327 1 1 if ($cyclic_refs eq 'warn') { }
1 0 elsif ($cyclic_refs eq 'ignore') { }
347 50 0 if ref $data eq "YAML::PP::Preserve::Scalar" and $self->preserve_scalar_style || $self->preserve_alias