Condition Coverage

blib/lib/FFI/Platypus.pm
Criterion Covered Total %
condition 53 78 67.9


and 3 conditions

line !l l&&!r l&&r condition
65 0 351 0 defined $api and $api > 2
351 0 0 defined $api and $api > 2 and $experimental != $api
155 0 0 354 defined $value and $value ne $self->{'lang'}
194 0 0 278 defined $self and defined $name
213 0 0 207 defined $alias and ref $cb eq "HASH"
239 0 0 13 defined $name and defined $alias
268 1 0 2 ref $self and eval { do { $self->isa("FFI::Platypus") } }
276 0 0 131 ref $self and eval { do { $self->isa("FFI::Platypus") } }
293 0 0 1283 @_ >= 3 and @_ <= 6
299 6 1247 30 defined $_[0] and ref $_[0] eq "ARRAY"
305 30 603 650 not defined $var_args and @$fixed_args == 1
633 649 1 not defined $var_args and @$fixed_args == 1 and $fixed_args->[0] eq "void"
358 1 885 2 defined $_[0] and ref $_[0] eq "ARRAY"
403 3 0 1 defined $wrapper and ref $wrapper eq "CODE"

or 2 conditions

line l !l condition
53 115 236 $args{'api'} || 0
54 0 351 $args{'experimental'} || 0
103 12 339 $args{'lang'} || 'C'
208 2 205 $cb->{'argument_count'} || 1
514 949 127 $path or 0
519 93 33 $path or 0

or 3 conditions

line l !l&&r !l&&!r condition
217 125 69 13 defined $cb->{'native_to_perl'} or defined $cb->{'perl_to_native'}
194 13 0 defined $cb->{'native_to_perl'} or defined $cb->{'perl_to_native'} or defined $cb->{'perl_to_native_post'}
322 1283 0 0 $self->{'tp'}->parse($ret) || croak("unknown type: $ret")
324 1220 5 58 defined $address or $self->ignore_not_found
454 6 4 0 shift() || caller
487 1029 0 144 $self->{'mangler'} ||= $self->{'mymangler'}
504 1046 156 2 do { no warnings; $self->{'handles'}{$path or 0} } || FFI::Platypus::DL::dlopen($path, &FFI::Platypus::DL::RTLD_PLATYPUS_DEFAULT())
508 1 0 1 $self->{'api'} > 0 or $ENV{'FFI_PLATYPUS_DLERROR'}