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
53 26 670 if $name =~ s/^\+//
54 6 690 unless my $is = $spec->{'is'}
55 460 230 if ($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') { }
56 428 32 unless exists $spec->{'reader'}
59 178 2 unless exists $spec->{'accessor'} or $spec->{'reader'} and $spec->{'writer'}
61 24 4 unless exists $spec->{'reader'}
63 14 14 unless exists $spec->{'default'}
65 10 2 unless exists $spec->{'reader'}
66 10 2 unless exists $spec->{'writer'}
70 46 642 if (exists $spec->{'builder'})
71 10 36 if (ref $spec->{'builder'})
77 12 34 if ($spec->{'builder'} || 0) eq 1
79 2 44 unless $spec->{'builder'} =~ /\A(?!\d)\w+(?:::\w+)*\z/
81 8 678 if (($spec->{'predicate'} || 0) eq 1)
82 2 6 $name =~ /^_/ ? :
84 4 682 if (($spec->{'clearer'} || 0) eq 1)
85 2 2 $name =~ /^_/ ? :
87 2 684 if (($spec->{'trigger'} || 0) eq 1)
90 10 676 if (($spec->{'coerce'} || 0) eq 1)
92 4 6 if (&blessed($isa) and $isa->can('coercion')) { }
2 4 elsif (&blessed($isa) and $isa->can('coerce')) { }
102 1182 182 unless exists $spec->{$setting}
106 188 484 if (exists $spec->{'default'})
107 152 36 if (ref $spec->{'default'})
113 8 656 if (exists $spec->{'moosify'})
114 2 6 if (ref $spec->{'moosify'} ne 'ARRAY')
124 488 176 if (my $reader = $spec->{'reader'})
126 6 482 if not $spec->{'allow_overwrite'} and defined &{"${into}::$reader";}
127 218 264 if (our $CAN_HAZ_XS and $self->is_simple_get($name, $spec)) { }
142 186 472 if (my $accessor = $spec->{'accessor'})
144 2 184 if not $spec->{'allow_overwrite'} and defined &{"${into}::$accessor";}
145 31 153 if (our $CAN_HAZ_XS and $self->is_simple_get($name, $spec) and $self->is_simple_set($name, $spec)) { }
163 22 634 if (my $writer = $spec->{'writer'})
165 2 20 if not $spec->{'allow_overwrite'} and defined &{"${into}::$writer";}
166 5 15 if (our $CAN_HAZ_XS and $self->is_simple_set($name, $spec)) { }
183 14 640 if (my $pred = $spec->{'predicate'})
185 2 12 if not $spec->{'allow_overwrite'} and defined &{"${into}::$pred";}
186 6 6 if (our $CAN_HAZ_XS and our $CAN_HAZ_XS_PRED) { }
200 10 642 if (my $builder = delete $spec->{'builder_sub'})
203 16 636 if (my $cl = $spec->{'clearer'})
205 2 14 if not $spec->{'allow_overwrite'} and defined &{"${into}::$cl";}
214 42 608 if (my $hspec = $spec->{'handles'})
217 10 32 if (ref $hspec eq 'ARRAY') { }
16 16 elsif (ref $hspec eq 'HASH') { }
14 2 elsif (not ref $hspec) { }
220 2 14 ref $hspec->{$_} ? :
232 2 36 if not $spec->{'allow_overwrite'} and defined &{"${into}::$proxy";}
242 44 598 if (my $asserter = $spec->{'asserter'})
244 2 42 if not $spec->{'allow_overwrite'} and defined &{"${into}::$asserter";}
261 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}) { }
265 2 2 ref $_ eq 'ARRAY' ? :
272 12 10 unless exists $spec->{'builder'} or exists $spec->{'default'}
302 48 6 unless $spec->{'builder'} or exists $spec->{'default'}
307 1538 58 if not $spec->{'lazy'}
313 389 70 if ($self->is_simple_get($name, $spec)) { }
357 6 78 if ($spec->{'coerce'})
367 12 72 $spec->{'isa'} ? :
376 172 38 if (exists $spec->{'default'}) { }
379 128 44 ref $spec->{'default'} ? :
402 42 126 if ($self->is_simple_set($name, $spec))
407 46 80 if ($coerce)
410 48 78 if ($isa_check) { }
20 58 elsif ($trigger) { }
411 10 38 $trigger ? :
441 258 10 if not defined $init_arg or $init_arg eq $name
478 122 146 $want_return ? :
122 146 $want_return ? :
122 146 $want_return ? :
512 22 436 if &blessed($sub)
513 104 354 if (my $quoted = quoted_from_sub($sub)) { }
515 4 100 if ($values eq '@_' or $values eq '$_[0]')
520 38 66 if (my $captures = $quoted->[2]) { }
548 2 1558 unless ($has_default or $test)
551 124 1434 if ($has_default)
553 118 6 $test ? :
561 68 1490 if ($spec->{'coerce'})
567 84 1474 if ($spec->{'isa'})
579 30 1528 $spec->{'trigger'} ? :
580 124 1434 if ($has_default) { }
581 10 114 $trigger && $test ? :
584 18 1416 $trigger ? :
599 44 1766 if ($spec->{'weak_ref'}) { }
654 2 34 if (@$args) { }
683 34 322 if (&blessed($value)) { }
314 8 elsif (ref $value eq 'CODE') { }
686 24 10 if eval {
698 16 2 $INC{'overload.pm'} ? :
8 10 $appended ? :