| blib/lib/Mic/Assembler.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| condition | 32 | 49 | 65.3 |
| line | !l | l&&!r | l&&r | condition |
|---|---|---|---|---|
| 120 | 49 | 0 | 49 | $type eq 'interface' and ref $spec->{$type} eq 'HASH' |
| 215 | 0 | 49 | 15 | not $spec->{'implementation'}{'methods'}{$name} and $meta->{'reader'} |
| 49 | 1 | 14 | not $spec->{'implementation'}{'methods'}{$name} and $meta->{'reader'} and $$in_interface{$meta->{'reader'}} | |
| 230 | 0 | 63 | 1 | not $spec->{'implementation'}{'methods'}{$name} and $meta->{'property'} |
| 63 | 0 | 1 | not $spec->{'implementation'}{'methods'}{$name} and $meta->{'property'} and $$in_interface{$meta->{'property'}} | |
| 247 | 0 | 63 | 1 | not $spec->{'implementation'}{'methods'}{$name} and $meta->{'writer'} |
| 63 | 0 | 1 | not $spec->{'implementation'}{'methods'}{$name} and $meta->{'writer'} and $$in_interface{$meta->{'writer'}} | |
| 358 | 24 | 0 | 6 | $type eq 'class' and $name eq $constructor_spec->{'name'} |
| line | l | !l | condition |
|---|---|---|---|
| 23 | 49 | 0 | $arg{'-spec'} || {} |
| 115 | 49 | 49 | $type ||= 'interface' |
| 309 | 0 | 5 | $spec->{'invariant_guard'} ||= sub { return if (caller 1)[0] eq $spec->{'name'}; foreach my $desc (keys %{$inv_hash;}) { my $sub = $inv_hash->{$desc}; confess("Invariant '${desc}' violated") unless &$sub(@_); }; } |
| 496 | 67 | 49 | $spec->{'constructor'} ||= {} |
| 505 | 0 | 49 | $constructor_spec->{'name'} ||= 'new' |
| line | l | !l&&r | !l&&!r | condition |
|---|---|---|---|---|
| 44 | 47 | 2 | 0 | $self->{'cls_stash'} ||= 'Package::Stash'->new($spec->{'name'}) |
| 48 | 10 | 39 | 0 | $Mic::Bound_implementation_of{$spec->{'name'}} || $spec->{'implementation'} |
| 198 | 2 | 0 | 0 | $r eq $spec->{'interface_name'} || $spec->{'name'} eq $r || $spec->{'does'}{$r} || $self->isa($r) |
| 298 | 0 | 5 | 0 | !ref($spec->{'interface'}) && $Mic::Spec_for{$spec->{'interface'}}{'interface_meta'}{'invariant'} || $spec->{'interface_meta'}{'invariant'} |
| 464 | 2 | 49 | 0 | $target_method->{$meth} || $meth |