Branch Coverage

blib/lib/Method/Generate/Accessor.pm
Criterion Covered Total %
branch 194 194 100.0


line true false branch
21 2 186 "$]" < 5.008003 || $ENV{'MOO_TEST_PRE_583'} ? :
51 694 2 unless $quote_opts
54 26 670 if $name =~ s/^\+//
58 6 690 if (not $is) { }
460 230 elsif ($is eq 'ro') { }
184 46 elsif ($is eq 'rw') { }
28 18 elsif ($is eq 'lazy') { }
12 6 elsif ($is eq 'rwp') { }
2 4 elsif ($is ne 'bare') { }
62 428 32 unless exists $spec->{'reader'}
66 178 2 unless exists $spec->{'accessor'} or $spec->{'reader'} and $spec->{'writer'}
69 24 4 unless exists $spec->{'reader'}
71 14 14 unless exists $spec->{'default'}
74 10 2 unless exists $spec->{'reader'}
75 10 2 unless exists $spec->{'writer'}
81 46 642 if (exists $spec->{'builder'})
82 10 36 if (ref $spec->{'builder'})
88 12 34 if ($spec->{'builder'} || 0) eq 1
90 2 44 unless $spec->{'builder'} =~ /\A(?!\d)\w+(?:::\w+)*\z/
93 8 678 if (($spec->{'predicate'} || 0) eq 1)
94 2 6 $name =~ /^_/ ? :
97 4 682 if (($spec->{'clearer'} || 0) eq 1)
98 2 2 $name =~ /^_/ ? :
101 2 684 if (($spec->{'trigger'} || 0) eq 1)
105 10 676 if (($spec->{'coerce'} || 0) eq 1)
107 4 6 if (&blessed($isa) and $isa->can('coercion')) { }
2 4 elsif (&blessed($isa) and $isa->can('coerce')) { }
120 1182 182 unless exists $spec->{$setting}
124 188 484 if (exists $spec->{'default'})
125 152 36 if (ref $spec->{'default'})
131 8 656 if (exists $spec->{'moosify'})
132 2 6 if (ref $spec->{'moosify'} ne "ARRAY")
142 488 176 if (my $reader = $spec->{'reader'})
144 6 482 if not $spec->{'allow_overwrite'} and defined &{"${into}::$reader";}
145 218 264 if (our $CAN_HAZ_XS and $self->is_simple_get($name, $spec)) { }
162 186 472 if (my $accessor = $spec->{'accessor'})
164 2 184 if not $spec->{'allow_overwrite'} and defined &{"${into}::$accessor";}
165 31 153 if (our $CAN_HAZ_XS and $self->is_simple_get($name, $spec) and $self->is_simple_set($name, $spec)) { }
185 22 634 if (my $writer = $spec->{'writer'})
187 2 20 if not $spec->{'allow_overwrite'} and defined &{"${into}::$writer";}
188 5 15 if (our $CAN_HAZ_XS and $self->is_simple_set($name, $spec)) { }
206 14 640 if (my $pred = $spec->{'predicate'})
208 2 12 if not $spec->{'allow_overwrite'} and defined &{"${into}::$pred";}
209 6 6 if (our $CAN_HAZ_XS and our $CAN_HAZ_XS_PRED) { }
225 10 642 if (my $builder = delete $spec->{'builder_sub'})
229 16 636 if (my $cl = $spec->{'clearer'})
231 2 14 if not $spec->{'allow_overwrite'} and defined &{"${into}::$cl";}
241 42 608 if (my $hspec = $spec->{'handles'})
251 2 14 ref $hspec->{$_} ? :
14 2 !ref($hspec) ? :
16 16 ref $hspec eq 'HASH' ? :
10 32 ref $hspec eq 'ARRAY' ? :
260 2 36 if not $spec->{'allow_overwrite'} and defined &{"${into}::$proxy";}
271 44 598 if (my $asserter = $spec->{'asserter'})
273 2 42 if not $spec->{'allow_overwrite'} and defined &{"${into}::$asserter";}
291 8 114 if ($key eq 'handles') { }
2 112 elsif ($key eq 'moosify') { }
24 88 elsif ($key eq 'builder' or $key eq 'default') { }
74 14 elsif (not exists $spec->{$key}) { }
295 2 2 ref $_ eq 'ARRAY' ? :
302 12 10 unless exists $spec->{'builder'} or exists $spec->{'default'}
332 48 6 unless $spec->{'builder'} or exists $spec->{'default'}
337 1538 58 if not $spec->{'lazy'}
343 389 70 if ($self->is_simple_get($name, $spec)) { }
387 6 78 if ($spec->{'coerce'})
397 12 72 $spec->{'isa'} ? :
406 172 38 if (exists $spec->{'default'}) { }
409 128 44 ref $spec->{'default'} ? :
432 42 126 if ($self->is_simple_set($name, $spec))
437 46 80 if ($coerce)
440 48 78 if ($isa_check) { }
20 58 elsif ($trigger) { }
441 10 38 $trigger ? :
471 258 10 if not defined $init_arg or $init_arg eq $name
508 122 146 $want_return ? :
122 146 $want_return ? :
122 146 $want_return ? :
542 22 436 if &blessed($sub)
543 104 354 if (my $quoted = quoted_from_sub($sub)) { }
545 4 100 if ($values eq "\@_" or $values eq "\$_[0]")
550 38 66 if (my $captures = $quoted->[2]) { }
578 2 1558 unless ($has_default or $test)
581 124 1434 if ($has_default)
583 118 6 $test ? :
591 68 1490 if ($spec->{'coerce'})
597 84 1474 if ($spec->{'isa'})
609 30 1528 $spec->{'trigger'} ? :
610 124 1434 if ($has_default) { }
611 10 114 $trigger && $test ? :
614 18 1416 $trigger ? :
629 44 1766 if ($spec->{'weak_ref'}) { }
684 2 34 if (@$args) { }
713 34 322 if (&blessed($value)) { }
314 8 elsif (ref $value eq 'CODE') { }
716 24 10 if eval {
728 16 2 $INC{'overload.pm'} ? :
8 10 $appended ? :