Branch Coverage

/tmp/u09XM_8B49/lib/My/Prefix/HashBase.pm
Criterion Covered Total %
branch 33 116 28.4


line true false branch
37 1 0 if (eval { do { require Class::XSAccessor; 'Class::XSAccessor'->VERSION(1.19); 1 } }) { }
56 1 0 $] >= 5.01 && require mro ? :
60 2 0 unless $INC{'Role/Tiny.pm'}
61 0 0 'Role::Tiny'->is_role($pkg) ? :
87 2 0 if not $My::Prefix::HashBase::VERSION{$into} or $My::Prefix::HashBase::VERSION{$into} > $ver
91 2 0 if (defined $arg and length $arg)
93 0 2 if ($p eq "\@")
97 0 2 if ($p eq "&")
109 0 0 unless ($INC{$pm})
111 0 0 unless (eval { do { require $pm; 1 } })
116 0 0 unless grep {$_ eq $parent;} @{"${into}::ISA";}
126 0 2 _is_role($into) ? :
128 1 1 if ($add_new and my $have_new = $into->can("new"))
130 0 1 unless $new_lookup->{$have_new}
135 2 0 $add_new ? :
0 1 unless $My::Prefix::HashBase::ATTR_SUBS{$_}
141 13 4 if (ref $v eq 'CODE') { }
150 0 2 if (@roles)
151 0 0 if $] < "5.01"
154 0 0 unless ($INC{'Role/Tiny.pm'})
156 0 0 unless (eval { do { require Role::Tiny; 1 } })
161 0 0 unless ("Role::Tiny"->can("is_role"))
170 0 0 unless ($INC{$pm})
172 0 0 unless (eval { do { require $pm; 1 } })
177 0 0 unless "Role::Tiny"->is_role($role)
181 0 0 unless exists $My::Prefix::HashBase::VERSION{$role}
187 0 0 if defined &{"${into}::$const";}
214 0 2 if $spec->{'strip'}
223 2 0 if ($spec->{'reader'})
224 0 2 if ($use_gen) { }
2 0 elsif (not $spec->{'no_xs'}) { }
235 2 0 if ($spec->{'writer'}) { }
0 0 elsif ($spec->{'read_only'}) { }
0 0 elsif ($spec->{'dep_writer'}) { }
236 0 2 if ($use_gen) { }
2 0 elsif (not $spec->{'no_xs'}) { }
247 0 0 $use_gen ? :
250 0 0 $use_gen ? :
253 0 2 if ($spec->{'custom'})
270 0 0 if ("0.004" > ($My::Prefix::HashBase::VERSION{$pkg} || 0))
276 0 0 $own ? :
277 0 0 unless $seen{$a}++
292 1 1 $__pre_init ? :
295 1 1 $__post_init ? :
302 0 0 if (@_ == 1) { }
306 0 0 if ($type eq 'HASH') { }
310 0 0 unless $type eq "ARRAY"
317 0 0 unless my $key = shift @attributes
329 0 0 unless exists $My::Prefix::HashBase::CAN_CACHE{$class}
332 0 0 if $My::Prefix::HashBase::CAN_CACHE{$class}
345 2 0 unless defined &{"${into}::new";}
346 2 0 unless defined &{"${into}::add_pre_init";}
347 2 0 unless defined &{"${into}::add_post_init";}
348 2 0 unless defined &{"${into}::_pre_init";}
349 2 0 unless defined &{"${into}::_post_init";}
374 0 0 unless grep {$_ eq $role;} @{$$self{"roles"};}
379 0 0 unless @{$self->{'roles'};}
382 0 0 unless ($ok)