blib/lib/Mic/Assembler.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
condition | 35 | 54 | 64.8 |
line | !l | l&&!r | l&&r | condition |
---|---|---|---|---|
119 | 49 | 0 | 49 | $type eq 'interface' and ref $spec->{$type} eq 'HASH' |
190 | 0 | 0 | 2 | ref $h1->{$k} eq 'HASH' and ref $h2->{$k} eq 'HASH' |
247 | 0 | 49 | 15 | not $spec->{'implementation'}{'methods'}{$meta->{'reader'}} and $meta->{'reader'} |
49 | 1 | 14 | not $spec->{'implementation'}{'methods'}{$meta->{'reader'}} and $meta->{'reader'} and $$in_interface{$meta->{'reader'}} | |
262 | 0 | 63 | 1 | not $spec->{'implementation'}{'methods'}{$meta->{'property'}} and $meta->{'property'} |
63 | 0 | 1 | not $spec->{'implementation'}{'methods'}{$meta->{'property'}} and $meta->{'property'} and $$in_interface{$meta->{'property'}} | |
279 | 0 | 63 | 1 | not $spec->{'implementation'}{'methods'}{$meta->{'writer'}} and $meta->{'writer'} |
63 | 0 | 1 | not $spec->{'implementation'}{'methods'}{$meta->{'writer'}} and $meta->{'writer'} and $$in_interface{$meta->{'writer'}} | |
390 | 24 | 0 | 6 | $type eq 'class' and $name eq $constructor_spec->{'name'} |
line | l | !l | condition |
---|---|---|---|
22 | 49 | 0 | $arg{'-spec'} || {} |
114 | 49 | 49 | $type ||= 'interface' |
164 | 2 | 49 | $from_interface ||= {} |
341 | 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(@_); }; } |
528 | 67 | 49 | $spec->{'constructor'} ||= {} |
537 | 0 | 49 | $constructor_spec->{'name'} ||= 'new' |
line | l | !l&&r | !l&&!r | condition |
---|---|---|---|---|
43 | 47 | 2 | 0 | $self->{'cls_stash'} ||= 'Package::Stash'->new($spec->{'name'}) |
47 | 10 | 39 | 0 | $Mic::Bound_implementation_of{$spec->{'name'}} || $spec->{'implementation'} |
230 | 2 | 0 | 0 | $r eq $spec->{'interface_name'} || $spec->{'name'} eq $r || $spec->{'does'}{$r} || $self->isa($r) |
330 | 0 | 5 | 0 | !ref($spec->{'interface'}) && $Mic::Spec_for{$spec->{'interface'}}{'interface_meta'}{'invariant'} || $spec->{'interface_meta'}{'invariant'} |
496 | 2 | 49 | 0 | $target_method->{$meth} || $meth |