Branch Coverage

blib/lib/IPC/Shareable.pm
Criterion Covered Total %
branch 0 292 0.0


line true false branch
129 0 0 unless (exists $global_register{$knot->seg->id})
133 0 0 unless $knot->{'_lock'}
135 0 0 if ($knot->{'_type'} eq 'HASH') { }
0 0 elsif ($knot->{'_type'} eq 'ARRAY') { }
0 0 elsif ($knot->{'_type'} eq 'SCALAR') { }
137 0 0 if $knot->_need_tie($val, $key)
142 0 0 if $knot->_need_tie($val, $i)
147 0 0 if $knot->_need_tie($val)
154 0 0 if ($knot->{'_lock'} & 2) { }
157 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
167 0 0 unless (exists $global_register{$knot->seg->id})
172 0 0 if ($knot->{'_lock'} or $knot->{'_iterating'}) { }
182 0 0 if ($knot->{'_type'} eq 'HASH') { }
0 0 elsif ($knot->{'_type'} eq 'ARRAY') { }
0 0 elsif ($knot->{'_type'} eq 'SCALAR') { }
183 0 0 if (defined $data) { }
191 0 0 if (defined $data) { }
199 0 0 if (defined $data) { }
209 0 0 if (my $inner = _is_kid($val))
219 0 0 if ($knot->{'_type'} eq 'HASH') { }
0 0 elsif ($knot->{'_type'} eq 'ARRAY') { }
230 0 0 if ($knot->{'_lock'} & 2) { }
233 0 0 if (not defined $knot->_encode($knot->seg, $knot->{'_data'}))
242 0 0 unless $knot->{'_lock'}
244 0 0 if ($knot->{'_lock'} & 2) { }
247 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
258 0 0 unless $knot->{'_lock'}
265 0 0 unless $knot->{'_lock'}
275 0 0 if (not defined $next) { }
289 0 0 unless (exists $global_register{$knot->seg->id})
293 0 0 unless $knot->{'_lock'}
296 0 0 if ($knot->{'_lock'} & 2) { }
299 0 0 if (not defined $knot->_encode($knot->seg, $knot->{'_data'}))
307 0 0 unless $knot->{'_lock'}
310 0 0 if ($knot->{'_lock'} & 2) { }
313 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
322 0 0 unless $knot->{'_lock'}
324 0 0 if ($knot->{'_lock'} & 2) { }
327 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
336 0 0 unless $knot->{'_lock'}
338 0 0 if ($knot->{'_lock'} & 2) { }
341 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
350 0 0 unless $knot->{'_lock'}
352 0 0 if ($knot->{'_lock'} & 2) { }
355 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
364 0 0 unless $knot->{'_lock'}
371 0 0 unless $knot->{'_lock'}
373 0 0 if ($knot->{'_lock'} & 2) { }
376 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
390 0 0 if ($type eq "HASH")
394 0 0 if ($type eq "ARRAY")
398 0 0 if ($type eq "SCALAR")
410 0 0 if (not $warning =~ /hash after insertion/)
428 0 0 if (defined $attr) { }
442 0 0 unless defined $flags
444 0 0 if $flags & 8
446 0 0 if $knot->{'_lock'} & $flags
449 0 0 if $knot->{'_lock'}
453 0 0 if ($return_val)
462 0 0 unless $knot->{'_lock'}
463 0 0 if ($knot->{'_was_changed'})
464 0 0 unless (defined $knot->_encode($knot->seg, $knot->{'_data'}))
471 0 0 if $flags & 4
486 0 0 unless $s->attributes("owner") == $$
487 0 0 if $s->attributes("protected")
498 0 0 if $s->attributes("protected")
505 0 0 if (scalar @_ == 2)
508 0 0 if (scalar @_ == 1)
512 0 0 unless (defined $protect_key)
516 0 0 unless ($protect_key =~ /^\d+$/)
527 0 0 if ($stored_key and $stored_key == $protect_key)
538 0 0 unless $s->remove
542 0 0 unless $s->remove
549 0 0 if defined $knot->{'_shm'}
553 0 0 if defined $knot->{'_sem'}
558 0 0 unless (defined $glue)
562 0 0 unless defined $warn
587 0 0 if ($serializer eq 'storable') { }
0 0 elsif ($serializer eq 'json') { }
599 0 0 if $s->attributes("protected")
600 0 0 unless $s->attributes("destroy")
601 0 0 if $s->attributes("owner") != $$
610 0 0 if ($serializer eq 'storable') { }
0 0 elsif ($serializer eq 'json') { }
625 0 0 if (length $json > $seg->size)
635 0 0 unless $json
645 0 0 unless (defined $data)
661 0 0 if (length $ice > $seg->size)
671 0 0 unless $ice
675 0 0 if ($tag eq 'IPC::Shareable') { }
677 0 0 unless (defined $water)
688 0 0 if (scalar @_ == 4) { }
704 0 0 if ($knot->attributes("limit") and $shm_size > 1073741824)
712 0 0 if ($knot->attributes('graceful')) { }
718 0 0 unless (defined $exclusive)
719 0 0 if ($knot->attributes("warn"))
729 0 0 unless (defined $seg)
730 0 0 if ($! =~ /Cannot allocate memory/)
735 0 0 if ($! =~ /No space left on device/)
740 0 0 if (not $knot->attributes('create')) { }
0 0 elsif ($knot->attributes('create') and $knot->attributes('exclusive')) { }
756 0 0 unless (defined $sem)
760 0 0 unless ($sem->op(@{$semop_args{1};}))
777 0 0 if ($sem->getval(0) != 1)
779 0 0 unless (exists $global_register{$knot->seg->id})
784 0 0 unless ($sem->setval(0, 1))
796 0 0 defined $opts ? :
799 0 0 if (not defined $opts->{$k}) { }
0 0 elsif ($opts->{$k} eq 'no') { }
803 0 0 if ($^W)
825 0 0 if ($key_str eq '') { }
0 0 elsif ($key_str =~ /^\d+$/) { }
837 0 0 if ($key > 2147483648)
840 0 0 if ($key == 0)
863 0 0 if $used_ids{$key}
876 0 0 if ($shm_slot_available)
878 0 0 if $seg
882 0 0 unless ($verified_exclusive)
902 0 0 if $knot->attributes("create")
903 0 0 if $knot->attributes("exclusive")
913 0 0 if ($parent->{'_key'} == IPC_PRIVATE()) { }
933 0 0 if ($type eq 'HASH') { }
0 0 elsif ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'SCALAR') { }
936 0 0 unless $child
938 0 0 if $opts{'tidy'}
945 0 0 unless $child
947 0 0 if $opts{'tidy'}
954 0 0 unless $child
965 0 0 unless my $data = shift()
968 0 0 unless $type
972 0 0 if ($type eq 'HASH') { }
0 0 elsif ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'SCALAR') { }
982 0 0 if (ref $obj eq "IPC::Shareable")
992 0 0 unless $type
996 0 0 if ($type eq 'HASH') { }
0 0 elsif ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'SCALAR') { }
1006 0 0 $need_tie ? :
1013 0 0 if ($parent_type eq 'HASH') { }
0 0 elsif ($parent_type eq 'ARRAY') { }
1015 0 0 if (exists $data->{$id} and keys %{$$data{$id};} and tied %{$$data{$id};})
1021 0 0 if (exists $data->[$id] and tied @{$$data[$id];})
1035 0 0 if (ref $_ eq 'IPC::Shareable') { }
1051 0 0 if (ref $_ eq 'IPC::Shareable') { }