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 |