Branch Coverage

blib/lib/Object/InsideOut.pm
Criterion Covered Total %
branch 659 944 69.8


line true false branch
126 0 194 if (&Scalar::Util::blessed($self))
131 0 194 if ($self ne 'Object::InsideOut')
132 0 0 if ('Exporter'->can('import'))
134 0 0 caller() eq 'Object::InsideOut' ? :
142 0 194 if (not $class or $class eq 'main')
152 0 194 if (defined ${$class . '::shared';})
160 1 193 if (${$class . '::storable';})
168 0 141 unless $pkg
171 0 141 if ($pkg =~ /^:(NOT?_?|!)?SHAR/i)
172 0 0 defined $1 ? :
178 3 138 if ($pkg =~ /^:HASH/i)
184 2 136 if ($pkg =~ /^:RESTRICT(?:ED)?(?:\((.*)\))?/i)
196 1 135 if ($pkg =~ /^:PRIV(?:ATE)?(?:\((.*)\))?/i)
208 2 133 if ($pkg =~ /^:PUB/i)
216 1 132 if ($pkg =~ /^:SECUR/i)
221 133 0 unless ($class->isa($pkg))
223 10 123 unless (grep {not $_ =~ /::$/;} keys %{$pkg . '::';})
225 5 5 if ($@)
231 2 3 unless (grep {not $_ =~ /::$/;} keys %{$pkg . '::';})
242 0 126 if (ref $_[0])
244 0 0 if (ref $imports ne 'ARRAY')
248 0 0 if ($@)
261 119 7 if (exists $GBL{'tree'}{'td'}{$parent}) { }
264 172 36 unless (exists $seen{$ancestor})
275 7 0 unless (exists $GBL{'heritage'}{$class})
284 104 83 if ($need_oio)
289 187 0 unless (exists $seen{$class})
310 0 2600 if (exists $GBL{'attr'}{'MOD'}{'CODE'})
312 0 0 unless @attrs
324 3 2597 if (my($restrict) = grep(/^RESTRICT(?:ED)?$/i, @attrs) and grep {$_ =~ /^CHAIN(?:ED)?$/i unless $_ =~ /^CUM(?:ULATIVE)?$/i;} @attrs)
325 14 3 unless $_ =~ /^CUM(?:ULATIVE)?$/i
339 5 4099 if ($attr eq 'ID') { }
1 4098 elsif ($attr eq 'PREINIT') { }
21 4077 elsif ($attr eq 'INIT') { }
1 4076 elsif ($attr =~ /^REPL(?:ICATE)?$/) { }
2 4074 elsif ($attr =~ /^DEST(?:ROY)?$/) { }
13 4061 elsif ($attr =~ /^AUTO(?:METHOD)?$/) { }
41 4020 elsif ($attr =~ /^CUM(?:ULATIVE)?$/) { }
29 3991 elsif ($attr =~ /^CHAIN(?:ED)?$/) { }
2 3989 elsif ($attr =~ /^DUMP(?:ER)?$/) { }
2 3987 elsif ($attr =~ /^PUMP(?:ER)?$/) { }
13 3974 elsif ($attr =~ /^RESTRICT(?:ED)?$/) { }
1431 2543 elsif ($attr =~ /^PRIV(?:ATE)?$/) { }
48 2495 elsif ($attr =~ /^HIDD?EN?$/) { }
1850 645 elsif ($attr =~ /^SUB/) { }
483 162 elsif ($attr =~ /^METHOD/ and $attribute ne 'method') { }
82 80 elsif ($attr =~ /^MERGE/) { }
3 77 elsif ($attr =~ /^MOD(?:IFY)?_(ARRAY|CODE|HASH|SCALAR)_ATTR/) { }
1 76 elsif ($attr =~ /^FETCH_(ARRAY|CODE|HASH|SCALAR)_ATTR/) { }
0 76 elsif ($attr eq 'SCALARIFY') { }
75 1 elsif (my($ify) = grep({$_ eq $attr;} 'STRINGIFY', 'NUMERIFY', 'BOOLIFY', 'ARRAYIFY', 'HASHIFY', 'GLOBIFY', 'CODIFY')) { }
0 1 elsif (not $attr =~ /^PUB(LIC)?$/) { }
366 8 33 $arg && $arg =~ /BOTTOM/i ? :
370 11 18 $arg && $arg =~ /BOTTOM/i ? :
397 1419 431 if ($arg)
403 479 4 if ($arg)
411 1 81 if ($arg)
452 0 2600 if (@unused_attrs and 'Attribute::Handlers::UNIVERSAL'->can('MODIFY_CODE_ATTRIBUTES'))
471 0 71 if (exists $GBL{'attr'}{'MOD'}{'HASH'})
473 0 0 unless @attrs
481 46 36 if ($attr =~ /^(?:Field|[GS]et|Acc|Com|Mut|St(?:an)?d|LV(alue)?|All|R(?:ead)?O(?:nly)?|Arg|Type|Hand)/i) { }
0 36 elsif ($attr =~ /^Weak$/i) { }
0 36 elsif ($attr =~ /^Deep$/i) { }
2 34 elsif ($attr =~ /^Def(?:ault)?[(]($BALANCED_PARENS)[)]$/i) { }
0 34 elsif ($attr =~ /^Seq(?:uence)?(?:From)?[(]($BALANCED_PARENS)[)]$/i) { }
1 33 elsif ($attr =~ /^Name\s*[(]\s*'?([^)'\s]+)'?\s*[)]/i) { }
33 0 elsif ($attr =~ /^InitArgs?$/i) { }
0 0 elsif ($attr ne 'shared') { }
484 38 8 if ($attr =~ /^(?:Field|Type)/i) { }
508 0 2 if ($@)
528 0 0 if ($@)
557 0 71 if (@unused_attrs and 'Attribute::Handlers::UNIVERSAL'->can('MODIFY_HASH_ATTRIBUTES'))
574 2 193 if (exists $GBL{'attr'}{'MOD'}{'ARRAY'})
576 0 2 unless @attrs
584 326 26 if ($attr =~ /^(?:Field|[GS]et|Acc|Com|Mut|St(?:an)?d|LV(alue)?|All|R(?:ead)?O(?:nly)?|Arg|Type|Hand)/i) { }
1 25 elsif ($attr =~ /^Weak$/i) { }
1 24 elsif ($attr =~ /^Deep$/i) { }
17 7 elsif ($attr =~ /^Def(?:ault)?[(]($BALANCED_PARENS)[)]$/i) { }
3 4 elsif ($attr =~ /^Seq(?:uence)?(?:From)?[(]($BALANCED_PARENS)[)]$/i) { }
4 0 elsif ($attr =~ /^Name\s*[(]\s*'?([^)'\s]+)'?\s*[)]/i) { }
0 0 elsif ($attr ne 'shared') { }
587 221 105 if ($attr =~ /^(?:Field|Type)/i) { }
611 0 17 if ($@)
631 0 3 if ($@)
654 0 195 if (@unused_attrs and 'Attribute::Handlers::UNIVERSAL'->can('MODIFY_ARRAY_ATTRIBUTES'))
671 0 436 if $GBL{'term'}
680 0 436 $sharing ? :
684 215 221 if ($id)
685 74 141 unless (exists $reuse->{$tree})
686 0 74 $sharing ? :
688 0 215 if $sharing
690 74 141 if (not defined $r_tree->[$thread_id]) { }
691 0 74 $sharing ? :
694 0 101 if ($_ == $id)
705 85 136 if (exists $reuse->{$tree})
706 0 85 if $sharing
707 85 0 if (defined $reuse->{$tree}[$thread_id])
709 83 2 if (defined $id)
717 61 77 if (exists $g_id->{$tree})
718 0 61 if $sharing
721 0 77 if ($sharing)
740 0 2594 if ($@) { }
0 2594 elsif ($name eq '__ANON__') { }
760 167 173 unless delete $GBL{'init'}
774 183 236 if (not exists $id_subs->{$class}) { }
165 90 elsif ($id_subs->{$class}{'code'} == \&Object::InsideOut::_ID and not exists $$obj_ids{$id_subs->{$class}{'pkg'}}) { }
794 24 179 if (%to_propagate) { }
801 0 179 unless (defined $pkg)
807 0 179 if (exists $id_subs->{$pkg})
821 122 81 unless exists $GBL{'asi'}{$pkg}
825 662 169 if (exists $id_subs->{$class}) { }
827 0 662 if ($id_subs->{$class}{'code'} != $id_subs->{$pkg}{'code'} or $id_subs->{$class}{'pkg'} ne $id_subs->{$pkg}{'pkg'})
831 0 0 if ($id_subs->{$class}{'code'} == \&Object::InsideOut::_ID or $id_subs->{$pkg}{'code'} == \&Object::InsideOut::_ID)
842 0 0 $id_subs->{$class}{'code'} == \&Object::InsideOut::_ID ? :
0 0 $id_subs->{$pkg}{'code'} == \&Object::InsideOut::_ID ? :
0 0 $id_subs->{$class}{'code'} == \&Object::InsideOut::_ID && $id_subs->{$pkg}{'code'} == \&Object::InsideOut::_ID ? :
857 487 0 unless (defined $seen{$add})
863 92 77 if (exists $GBL{'asi'}{$class})
865 169 0 unless (defined $seen{$add})
875 0 173 if ($GBL{'share'}{'ok'})
881 0 0 if (grep /^$flag_class$/, @$tree)
884 0 0 if (exists $sh_cl->{$class}) { }
886 0 0 if ($sh_cl->{$class}{'share'} != $sh_cl->{$flag_class}{'share'})
890 0 0 $sh_cl->{$flag_class}{'share'} ? :
910 0 0 if ($sh_cl->{$flag_class}{'share'})
912 0 0 if (exists $id_subs->{$flag_class} and $id_subs->{$flag_class}{'code'} == \&Object::InsideOut::_ID)
916 0 0 unless (exists $obj_ids->{$share_tree})
920 0 0 unless (exists $reuse->{$share_tree})
924 0 0 unless (defined $r_tree->[0])
932 0 0 if (not exists $GBL{'share'}{'obj'} and $] < 5.008009 || $threads::shared::VERSION lt '1.15')
943 15 158 if (%{$GBL{'sub'}{'auto'};})
948 12 161 if (exists $GBL{'sub'}{'ol'})
954 54 119 if (my $meta_m = delete $GBL{'meta'}{'method'})
962 71 102 if (my $meta_s = delete $GBL{'meta'}{'subr'})
970 58 115 if (my $merge = delete $GBL{'merge'})
985 6 167 if (my $restr = delete $GBL{'perm'}{'restr'})
1002 73 100 if (my $priv = delete $GBL{'perm'}{'priv'})
1019 26 147 if (my $hide = delete $GBL{'perm'}{'hide'})
1032 8 165 if (exists $GBL{'sub'}{'cumu'}{'new'})
1037 5 168 if (exists $GBL{'sub'}{'chain'}{'new'})
1046 12 416 $pkg->isa('Storable') ? :
1053 1022 1299 unless (*{$full_sym;}{'CODE'})
1056 0 1928 if (*{$class_sym;}{'CODE'} and *{$class_sym;}{'CODE'} != \&{$sym;})
1065 182 840 if ($sym eq 'new') { }
200 640 elsif ($sym eq 'clone' or $sym eq 'dump') { }
0 640 elsif ($sym eq 'create_field') { }
40 600 elsif ($sym =~ /^STORABLE_/ or $sym eq 'AUTOLOAD') { }
226 374 elsif ($sym =~ /herit/ or $sym eq 'set') { }
1096 122 55 unless $new
1112 2 368 if (ref $fld eq 'ARRAY' and $do_ho)
1115 2 0 if ($class eq $ho)
1118 2 0 (caller())[1] =~ /Dynamic/ ? :
1129 0 368 if (is_sharing($pkg) and not threads::shared::is_shared($fld))
1137 0 0 if ($contents)
1138 0 0 if (ref $fld eq 'HASH') { }
1147 368 0 if ($attr)
1152 231 137 unless (grep {$_ == $fld;} @{$$fld_refs{$pkg};})
1164 0 95 if (ref $hash ne 'HASH')
1172 58 124 if ref $spec ne 'HASH'
1174 32 228 if ($opt =~ qr/^DEF(?:AULTs?)?$/i) { }
62 166 elsif ($opt =~ qr/^FIELD$/i) { }
4 162 elsif ($opt =~ qr/^(?:MAND|REQ)/i) { }
3 159 elsif ($opt =~ qr/^PRE/i) { }
15 144 elsif ($opt =~ qr/^RE(?:GEXp?)?$/i) { }
14 130 elsif ($opt =~ qr/^TYPE$/i) { }
1185 15 0 ref $spec->{$opt} eq 'Regexp' ? :
1204 0 0 $sharing ? :
1207 0 0 if (exists $sh_cl->{$class}) { }
1208 0 0 if ($sh_cl->{$class}{'share'} != $sharing)
1210 0 0 if ($sharing) { }
1232 0 0 if ($sharing and $threads::shared::threads_shared and $threads::shared::VERSION ge '0.95')
1244 1514 0 unless $GBL{'share'}{'ok'}
1256 0 0 if $_[0] ne 'Object::InsideOut'
1260 0 0 if ($threads::threads) { }
1262 0 0 if $GBL{'tid'} == $tid
1266 0 0 if exists $GBL{'pids'}{$$}
1272 0 0 if ($threads::shared::threads_shared and not $GBL{'share'}{'ok'})
1279 0 0 if (exists $GBL{'share'}{'obj'})
1317 0 0 if ($do_repl)
1324 0 0 if ($id_sub == \&Object::InsideOut::_ID) { }
1331 0 0 if (not $g_id->[$tid] or $g_id->[$tid] < $$obj)
1340 0 0 if $] >= 5.008003
1347 0 0 if $] >= 5.008003
1353 0 0 if (ref $fld eq 'HASH') { }
1355 0 0 if ($weak->{'weak'}{$fld})
1361 0 0 if ($weak->{$fld})
1373 0 0 if (@repl)
1396 0 233 if (is_sharing($class)) { }
0 233 elsif ($threads::threads) { }
1400 0 0 if (exists $GBL{'share'}{'obj'})
1403 0 0 if (exists $sh_obj->{$class}) { }
1430 56 89 unless (exists $spec->{' '})
1437 145 395 if $key eq ' '
1438 337 58 ref $val eq 'HASH' ? :
1448 62 418 $regex ? :
1449 43 437 if (defined $found{$key}) { }
1450 20 23 if (defined $value)
1456 451 29 if (defined $arg)
1462 22 145 if (exists $args->{$class})
1464 0 22 if (ref $args ne 'HASH')
1481 200 314 if (ref $spec_item ne 'HASH')
1485 148 52 unless (defined $found{$key})
1492 3 311 if (my $pre = $spec_item->{'_P'})
1493 0 3 if (ref $pre ne 'CODE')
1505 0 3 if ($@ or @errs)
1514 171 143 unless (defined $found{$key})
1516 2 169 if ($spec_item->{'_M'})
1522 77 92 if (exists $spec_item->{'_D'})
1523 37 40 if (ref $spec_item->{'_D'} eq 'CODE') { }
1531 92 77 unless (defined $found{$key})
1538 32 188 if (my $type = $spec_item->{'_T'})
1542 16 16 if (ref $type) { }
2 14 elsif ($type =~ /^scalar$/i) { }
4 10 elsif ($type =~ /^num(?:ber|eric)?$/i) { }
6 4 elsif ($type =~ /^(?:list|array)\s*(?:\(\s*(\S+)\s*\))*$/i) { }
1543 0 16 if (ref $type ne 'CODE')
1555 2 14 if ($@ or @errs)
1561 8 6 unless ($ok)
1569 1 1 if (ref $found{$key})
1578 2 2 unless (&Scalar::Util::looks_like_number($found{$key}))
1587 0 6 if (defined $1)
1590 3 3 if (ref $found{$key} ne 'ARRAY')
1598 4 0 if ($type =~ /^(array|hash|scalar)(?:_?ref)?\s*(?:\(\s*(\S+)\s*\))*$/i)
1600 2 2 if (defined $2)
1604 0 4 unless (is_it($found{$key}, $type))
1612 2 17 if (defined $subtype)
1613 0 2 if ($subtype =~ /^scalar$/i) { }
1 1 elsif ($subtype =~ /^num(?:ber|eric)?$/i) { }
1616 0 0 if (ref $elem)
1625 0 3 unless (&Scalar::Util::looks_like_number($elem))
1633 0 2 unless (is_it($elem, $subtype))
1645 193 14 if (my $field = $spec_item->{'_F'})
1662 0 219 if ($class eq 'Object::InsideOut')
1674 109 110 $have_cache ? :
1678 112 107 if ($cache{'pre'} or not $have_cache)
1680 4 108 if (%{$preinit_subs;})
1682 4 4 if (my $preinit = $preinit_subs->{$pkg})
1685 2 2 if ($have_cache) { }
1686 2 0 unless --$cache{'pre'}
1698 132 87 if ($cache{'def'} or not $have_cache)
1700 28 195 if (my $def = $GBL{'fld'}{'def'}{$pkg})
1703 22 6 if ($have_cache) { }
1704 22 0 unless --$cache{'def'}
1717 145 182 if (my $spec = $g_args->{$pkg})
1725 53 259 if (my $init = $init_subs->{$pkg}) { }
81 178 elsif (exists $pkg_args{$pkg}) { }
1 177 elsif (exists $all_args->{$pkg}) { }
1727 49 4 if (exists $pkg_args{$pkg}) { }
1735 2 79 if (%{$pkg_args{$pkg};})
1744 0 1 if (ref $all_args->{$pkg} ne 'HASH')
1756 195 4 if ($used_args)
1760 19 153 if (exists $pkgs{$key}) { }
1762 2 29 unless (exists $used_args->{$key}{$subkey})
1767 3 150 unless (exists $used_args->{$key})
1775 106 88 unless ($have_cache)
1788 3 2 $is_deep ? :
1792 0 5 unless ($class)
1811 0 7 if $am_sharing
1812 0 7 if (ref $fld eq 'HASH') { }
1816 0 0 $am_sharing ? :
0 0 !$fdeep ? :
1817 0 0 if ($weak->{$fld})
1821 0 5 $am_sharing ? :
2 5 !$fdeep ? :
1825 1 6 if ($weak->{$fld})
1832 0 7 if (my $replicate = $repl->{$pkg})
1849 1 18 if ($class eq 'Object::InsideOut')
1866 0 335 unless (&Scalar::Util::blessed($self))
1871 0 335 unless ($self->isa('Object::InsideOut'))
1877 0 335 unless (defined $field)
1883 0 335 if (not $fld_type or $fld_type ne 'ARRAY' and $fld_type ne 'HASH')
1891 0 335 if ($weak and not ref $data)
1898 0 335 if ($GBL{'share'}{'ok'} and threads::shared::is_shared($field)) { }
1900 0 0 if ($fld_type eq 'HASH') { }
1908 66 269 if ($fld_type eq 'HASH') { }
1916 3 332 if ($weak)
1917 0 3 if ($fld_type eq 'HASH') { }
1932 65 225 unless $$self
1941 0 225 if ($threads::shared::threads_shared and not $GBL{'term'})
1946 0 0 exists $GBL{'share'}{'obj'} ? :
1949 0 0 if ($@)
1956 0 225 if ($is_sharing) { }
0 225 elsif ($threads::threads) { }
1960 0 0 if ($GBL{'term'}) { }
0 0 elsif (exists $GBL{'share'}{'obj'}) { }
1961 0 0 if $tid
1965 0 0 unless (exists $$so_cl{$$self})
1979 0 0 if $_ != $tid
0 0 if (@{$$so_cl{$$self};} = grep({$_ == 0 or 'threads'->object($_) if $_ != $tid;} @{$$so_cl{$$self};}))
1991 0 0 unless (exists $$obj_cl{$$self})
2006 6 339 if (my $destroy = $dest_subs->{$pkg})
2019 0 669 if $is_sharing
2020 91 578 if (ref $fld eq 'HASH') { }
2021 0 91 if ($is_sharing)
2023 0 0 unless defined $$fld{$$self}
2027 0 578 if ($is_sharing)
2029 0 0 unless defined $$fld[$$self]
2037 225 0 if $] >= 5.008003
2040 215 10 if ($GBL{'sub'}{'id'}{$class}{'code'} == \&Object::InsideOut::_ID)
2048 3 222 if ($dest_err)
2054 54 171 if ($err or $@)
2056 1 53 if not $err
2066 0 128 unless defined $thing
2069 0 128 if (@_ == 1)
2071 0 0 wantarray ? :
2074 0 128 unless defined $method
2086 0 909 unless defined $thing
2089 0 909 if (@_ == 1)
2094 0 909 unless defined $type
2112 5 0 if (@_ == 4) { }
2124 1 4 if ($@)
2131 0 4 if (is_sharing(ref $obj))
2135 4 0 if ($] >= 5.008003)
2152 0 218 if (exists $dump->{$name} and $fld != $dump->{$name}{'fld'})
2157 21 197 if (my($old_name) = grep({$dump->{$_}{'fld'} == $fld;} keys %$dump))
2159 7 14 if ($old_src eq 'Name') { }
11 3 elsif ($src eq 'Name') { }
0 3 elsif ($old_src eq 'InitArgs') { }
2 1 elsif ($src eq 'InitArgs') { }
0 1 elsif ($old_src eq 'Get') { }
1 0 elsif ($src eq 'Get') { }
0 0 elsif ($old_src eq 'Set') { }
2202 11 7 unless *{$classname . '::' . $symname;}{'CODE'}
2218 5 3 unless $class_delegated_to =~ /::/
2224 2 1 $class_delegated_to->can('meta') ? :
2240 13 27 if not /^(?:new|clone|meta|set)$/ and $methods->{$_}{'class'} eq $class_delegated_to
2255 119 249 if ($name) { }
133 116 elsif (not $decl) { }
5 111 elsif ($kind =~ /^Type/i and $decl =~ /^(?:sub|\\&)/) { }
2 109 elsif ($kind =~ /^Hand/i) { }
12 97 elsif (not $kind =~ /^Field/i) { }
2259 133 0 if $kind =~ /^Field/i
2270 0 12 unless ($decl =~ s/'?name'?\s*=>/'${kind}'=>/i)
2281 93 142 unless ($decl =~ /^{/)
2290 0 235 if ($@ or @errs)
2304 197 38 unless ($kind =~ /^arg$/i)
2310 16 268 if ($key_uc =~ /ALL/) { }
4 264 elsif ($key_uc =~ /R(?:EAD)?O(?:NLY)?/) { }
2 262 elsif ($key_uc =~ /ARG/) { }
2312 16 0 if ($key_uc eq 'ALL')
2317 3 1 if ($key_uc =~ /^R(?:EAD)?O(?:NLY)?$/)
2326 1 283 if ($key_uc =~ /^ST.*D.*R(?:EAD)?O(?:NLY)?/) { }
19 264 elsif ($key_uc =~ /^ST.*D/) { }
144 120 elsif ($key_uc =~ /^ACC|^COM|^MUT|[GS]ET/) { }
0 120 elsif ($key_uc eq 'COPY' or $key_uc eq 'CLONE') { }
0 120 elsif ($key_uc eq 'DEEP') { }
0 120 elsif ($key_uc =~ /^WEAK/) { }
62 58 elsif ($key_uc eq 'TYPE') { }
3 55 elsif ($key_uc eq 'NAME') { }
28 27 elsif ($key_uc =~ /^RET(?:URN)?$/) { }
4 23 elsif ($key_uc =~ /^PERM|^PRIV|^REST/) { }
14 9 elsif ($key_uc =~ /^LV/) { }
0 9 elsif ($key_uc =~ /^PRE/) { }
7 2 elsif ($key_uc =~ /^HAND/) { }
0 2 elsif ($key_uc ne 'IGNORE') { }
2336 133 11 if ($key_uc =~ /ACC|COM|MUT|GET/)
2340 90 54 if ($key_uc =~ /ACC|COM|MUT|SET/)
2346 0 0 if (uc $val eq 'DEEP')
2351 0 0 if ($val)
2358 0 0 if ($val)
2366 0 62 if (not $val or ref $val and ref $val ne 'CODE')
2373 52 10 unless (ref $val)
2376 6 46 if ($val =~ /^(.*)\((.+)\)$/i)
2379 3 3 if ($subtype =~ /^num(?:ber|eric)?$/i) { }
0 3 elsif ($subtype =~ /^scalar$/i) { }
2385 15 37 if ($val =~ /^num(?:ber|eric)?$/i) { }
1 36 elsif ($val =~ /^scalar$/i) { }
11 25 elsif ($val =~ /^(?:list|array)$/i) { }
4 21 elsif (uc $val eq 'HASH') { }
9 12 elsif ($val =~ /^(hash|array|scalar)_?ref$/i) { }
2396 6 46 if ($subtype)
2418 4 0 if ($key_uc =~ /^PERM/) { }
0 0 elsif ($key_uc =~ /^PRIV/) { }
0 0 elsif ($key_uc =~ /^REST/) { }
2419 1 3 if ($val =~ /^PRIV/i) { }
3 0 elsif ($val =~ /^REST/i) { }
2432 0 0 if ($val)
2436 0 0 if ($val)
2443 9 5 if ($val and not &Scalar::Util::looks_like_number($val)) { }
2454 0 0 if (ref $pre ne 'CODE')
2474 0 222 if (not defined $val or $val eq '')
2483 60 175 if ($arg or $kind =~ /^ARG$/i)
2485 28 32 unless (exists $g_args->{$pkg})
2489 38 22 unless ($arg)
2493 60 0 unless (defined $name)
2498 14 46 if ($fld_type->{$field_ref} and not exists $g_args->{$arg}{'_T'})
2503 23 37 if (my $g_def = delete $GBL{'fld'}{'def'}{$pkg})
2506 8 92 if ($field_ref == $item->[0]) { }
2512 22 1 if (@defs)
2523 63 172 if ($name) { }
138 34 elsif ($get) { }
3 31 elsif ($set) { }
27 4 elsif (not $return || $lvalue || $delegate) { }
2524 0 63 if (add_dump_field('Name', $name, $field_ref, $dump) eq 'conflict')
2531 39 0 unless ($get or $set or $return or $lvalue)
2535 0 138 if (add_dump_field('Get', $get, $field_ref, $dump) eq 'conflict')
2542 0 3 if (add_dump_field('Set', $set, $field_ref, $dump) eq 'conflict')
2553 0 169 if ($return || $lvalue and not $set)
2562 280 58 if ($method)
2565 0 280 if (*{$pkg . '::' . $method;}{'CODE'})
2575 150 19 if (not defined $return or $return eq 'NEW') { }
10 9 elsif ($return eq 'OLD' or $return =~ /^PREV(?:IOUS)?$/ or $return eq 'PRIOR') { }
9 0 elsif ($return eq 'SELF' or $return =~ /^OBJ(?:ECT)?$/) { }
2590 63 106 if ($fld_type->{$field_ref})
2592 52 11 unless (ref $type)
2593 5 47 if ($type =~ /^(.*)\((.+)\)$/i)
2597 9 43 if ($type =~ /^(HASH|ARRAY|SCALAR)_ref$/)
2603 0 5 if ($subtype and ($type ne 'list' and $type ne 'ARRAY'))
2612 118 51 if ($set)
2613 88 30 $get && $get eq $set ? :
2614 14 104 if ($lvalue)
2619 9 109 if (ref $type) { }
48 61 elsif ($type ne 'NONE') { }
2624 5 113 if ($subtype)
2628 74 88 if ($get and !$set || $get ne $set)
2632 58 280 unless $meth
2634 2 278 if (defined $private) { }
5 273 elsif (defined $restricted) { }
2648 14 155 if ($lvalue) { }
104 51 elsif ($set) { }
2662 16 88 ref $field_ref eq 'HASH' ? :
2665 77 27 if ($get and $get eq $set) { }
2681 0 104 if ($pre)
2706 0 104 if (is_sharing($pkg))
2711 6 98 if ($return eq 'OLD')
2716 0 104 is_sharing($pkg) ? :
2719 1 103 if ($weak)
2724 5 99 if ($return eq 'SELF') { }
6 93 elsif ($return eq 'OLD') { }
4 89 elsif ($use_want) { }
1 88 elsif ($weak) { }
2727 4 2 if ($use_want)
2740 158 11 unless ref $type
2743 74 88 if ($get and !$set || $get ne $set)
2744 11 63 ref $field_ref eq 'HASH' ? :
2754 7 162 if ($delegate)
2761 9 3 unless (defined $to)
2765 0 12 if (*{$pkg . '::' . $from;}{'CODE'})
2771 0 12 ref $field_ref eq 'HASH' ? :
2790 37 48 if (@_ > 1)
12 52 if (@_ > 1)
15 40 if (@_ < 2)
5 26 if (@_ > 1)
17 27 if (@_ > 1)
10 38 if (@_ > 1)
4 36 if @_ == 1
5 32 if (@_ > 1)
7 19 if (@_ > 1)
2792 0 169 if ($@ or @errs)
2811 74 130 if (defined $readonly)
2820 2 202 if (defined $private) { }
3 199 elsif (defined $restricted) { }
2851 9 109 if (ref $type) { }
61 48 elsif ($type eq 'NONE') { }
1 47 elsif ($type eq 'scalar') { }
14 33 elsif ($type eq 'numeric') { }
9 24 elsif ($type eq 'list') { }
3 21 elsif ($type eq 'HASH' and not $is_ref) { }
2873 1 60 if ($weak)
2953 5 113 if ($subtype)
2954 0 5 if ($subtype =~ /^scalar$/i) { }
3 2 elsif ($subtype =~ /^num(?:ber|eric)?$/i) { }
3007 78 206 if (ref $arg eq 'HASH') { }
0 206 elsif (ref $arg) { }
0 206 elsif (not @_) { }
3038 4 33 unless (grep {$_ eq $caller;} @$exempt or $caller->isa($pkg) or $pkg->isa($caller))
3057 4 4279 unless (grep {$_ eq $caller;} @$exempt)
3084 59 0 if (not exists $INC{$file})
3089 0 59 if ($@) { }
0 59 elsif (not defined $rc) { }
0 59 elsif (not $rc) { }
3237 34 34 if ($_[0] eq 'Object::InsideOut')