Branch Coverage

blib/lib/Class/Tiny/Antlers.pm
Criterion Covered Total %
branch 78 124 62.9


line true false branch
28 0 22 unless $EXPORT_TAGS{substr $_, 1}
3 19 @_ ? :
31 22 0 if delete $want{'strict'}
32 3 19 if delete $want{'warnings'}
35 22 0 if delete $want{'has'}
36 22 0 if delete $want{'extends'}
37 22 0 if delete $want{'with'}
38 3 19 if delete $want{'confess'}
42 57 9 unless delete $want{$modifier}
50 0 22 if keys %want
75 0 2 unless my(%rev) = reverse(%$exports)
80 8 0 if ($stash->{$name} and defined &{$stash->{$name};})
82 8 0 if ($rev{$target->can($name)})
89 24 8 unless defined *{$old;}{$type}
119 0 31 if (defined $attr and ref $attr eq 'ARRAY')
127 17 14 if exists $spec{'default'}
129 0 31 if (not defined $attr or ref $attr or not $attr =~ /^[^\W\d]\w*$/s)
134 3 28 exists $spec{'init_arg'} ? :
143 0 31 if ($spec{'isa'} or $spec{'coerce'})
145 0 0 unless ref $spec{'isa'}
146 0 0 unless $spec{'isa'}->can('check')
147 0 0 unless $spec{'isa'}->can('get_message')
148 0 0 unless $spec{'isa'}->can('coerce') or not $spec{'coerce'}
151 0 0 unless $BUILD_WRAPPED{$caller}++
154 0 31 if ($is eq 'lazy')
160 2 29 if (defined $lazy and not $lazy) { }
0 29 elsif (keys %spec) { }
169 1 28 if ($required and 'Class::Tiny::Object'->can('new') == $caller->can('new'))
174 25 3 if ($init_arg and ref $init_arg eq 'SCALAR' and not defined $$init_arg) { }
2 1 elsif (not $init_arg or $init_arg ne $attr) { }
184 6 20 if (defined $default and ref $default eq 'CODE') { }
9 11 elsif (defined $default) { }
196 13 13 if ($is eq 'rw') { }
12 1 elsif ($is eq 'ro' or $is eq 'rwp') { }
1 0 elsif ($is eq 'bare') { }
205 6 6 if $is eq 'rwp'
218 3 23 if ($clearer)
220 1 1 $attr =~ /^_/ ? :
2 1 if $clearer eq '1'
224 4 22 if ($predicate)
226 1 1 $attr =~ /^_/ ? :
2 2 if $predicate eq '1'
230 7 6 if @_ > 1
6 8 if @_ > 1
3 6 unless exists $_[0]{'aaa'}
3 6 unless exists $_[0]{'aaa'}
2 5 unless exists $_[0]{'aaa'}
1 3 if @_ > 1
1 3 unless exists $_[0]{'bbb'}
1 3 if @_ > 1
233 0 26 if $setter_wrap
235 1 25 if $needs_clean
242 0 0 if (exists &{"${caller}::BUILD";}) { }
269 0 0 unless my $type = $spec->{$attr}{'isa'}
270 0 0 unless exists $args->{$attr}
271 0 0 if $type->check($args->{$attr})
272 0 0 if ($spec->{$attr}{'coerce'})
274 0 0 if ($type->check($coerced))
291 0 0 if ($coerce) { }
0 0 elsif ($type->can('can_be_inlined') and $type->can_be_inlined) { }
367 0 0 defined $specs{$_} ? :
371 0 0 unless $CLASS_ATTRIBUTES{$p}