Branch Coverage

blib/lib/Object/InsideOut.pm
Criterion Covered Total %
branch 660 944 69.9


line true false branch
130 0 194 if (&Scalar::Util::blessed($self))
135 0 194 if ($self ne 'Object::InsideOut')
136 0 0 if ('Exporter'->can('import'))
138 0 0 caller() eq 'Object::InsideOut' ? :
146 0 194 if (not $class or $class eq 'main')
156 0 194 if (defined ${$class . '::shared';})
164 1 193 if (${$class . '::storable';})
172 0 141 unless $pkg
175 0 141 if ($pkg =~ /^:(NOT?_?|!)?SHAR/i)
176 0 0 defined $1 ? :
182 3 138 if ($pkg =~ /^:HASH/i)
188 2 136 if ($pkg =~ /^:RESTRICT(?:ED)?(?:\((.*)\))?/i)
200 1 135 if ($pkg =~ /^:PRIV(?:ATE)?(?:\((.*)\))?/i)
212 2 133 if ($pkg =~ /^:PUB/i)
220 1 132 if ($pkg =~ /^:SECUR/i)
225 133 0 unless ($class->isa($pkg))
227 10 123 unless (grep {not $_ =~ /::$/;} keys %{$pkg . '::';})
229 5 5 if ($@)
235 2 3 unless (grep {not $_ =~ /::$/;} keys %{$pkg . '::';})
246 0 126 if (ref $_[0])
248 0 0 if (ref $imports ne 'ARRAY')
252 0 0 if ($@)
265 119 7 if (exists $GBL{'tree'}{'td'}{$parent}) { }
268 172 36 unless (exists $seen{$ancestor})
279 7 0 unless (exists $GBL{'heritage'}{$class})
288 104 83 if ($need_oio)
293 187 0 unless (exists $seen{$class})
314 0 2600 if (exists $GBL{'attr'}{'MOD'}{'CODE'})
316 0 0 unless @attrs
328 3 2597 if (my($restrict) = grep(/^RESTRICT(?:ED)?$/i, @attrs) and grep {$_ =~ /^CHAIN(?:ED)?$/i unless $_ =~ /^CUM(?:ULATIVE)?$/i;} @attrs)
329 14 3 unless $_ =~ /^CUM(?:ULATIVE)?$/i
343 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)?$/) { }
370 8 33 $arg && $arg =~ /BOTTOM/i ? :
374 11 18 $arg && $arg =~ /BOTTOM/i ? :
401 1419 431 if ($arg)
407 479 4 if ($arg)
415 1 81 if ($arg)
456 0 2600 if (@unused_attrs and 'Attribute::Handlers::UNIVERSAL'->can('MODIFY_CODE_ATTRIBUTES'))
475 0 71 if (exists $GBL{'attr'}{'MOD'}{'HASH'})
477 0 0 unless @attrs
485 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') { }
488 38 8 if ($attr =~ /^(?:Field|Type)/i) { }
512 0 2 if ($@)
532 0 0 if ($@)
561 0 71 if (@unused_attrs and 'Attribute::Handlers::UNIVERSAL'->can('MODIFY_HASH_ATTRIBUTES'))
578 2 193 if (exists $GBL{'attr'}{'MOD'}{'ARRAY'})
580 0 2 unless @attrs
588 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') { }
591 221 105 if ($attr =~ /^(?:Field|Type)/i) { }
615 0 17 if ($@)
635 0 3 if ($@)
658 0 195 if (@unused_attrs and 'Attribute::Handlers::UNIVERSAL'->can('MODIFY_ARRAY_ATTRIBUTES'))
675 0 436 if $GBL{'term'}
684 0 436 $sharing ? :
688 215 221 if ($id)
689 74 141 unless (exists $reuse->{$tree})
690 0 74 $sharing ? :
692 0 215 if $sharing
694 74 141 if (not defined $r_tree->[$thread_id]) { }
695 0 74 $sharing ? :
698 0 101 if ($_ == $id)
709 85 136 if (exists $reuse->{$tree})
710 0 85 if $sharing
711 85 0 if (defined $reuse->{$tree}[$thread_id])
713 83 2 if (defined $id)
721 61 77 if (exists $g_id->{$tree})
722 0 61 if $sharing
725 0 77 if ($sharing)
744 0 2594 if ($@) { }
0 2594 elsif ($name eq '__ANON__') { }
764 167 173 unless delete $GBL{'init'}
778 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'}}) { }
798 23 179 if (%to_propagate) { }
805 0 179 unless (defined $pkg)
811 0 179 if (exists $id_subs->{$pkg})
825 121 81 unless exists $GBL{'asi'}{$pkg}
829 660 169 if (exists $id_subs->{$class}) { }
831 0 660 if ($id_subs->{$class}{'code'} != $id_subs->{$pkg}{'code'} or $id_subs->{$class}{'pkg'} ne $id_subs->{$pkg}{'pkg'})
835 0 0 if ($id_subs->{$class}{'code'} == \&Object::InsideOut::_ID or $id_subs->{$pkg}{'code'} == \&Object::InsideOut::_ID)
846 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 ? :
861 487 0 unless (defined $seen{$add})
867 92 77 if (exists $GBL{'asi'}{$class})
869 169 0 unless (defined $seen{$add})
879 0 173 if ($GBL{'share'}{'ok'})
885 0 0 if (grep /^$flag_class$/, @$tree)
888 0 0 if (exists $sh_cl->{$class}) { }
890 0 0 if ($sh_cl->{$class}{'share'} != $sh_cl->{$flag_class}{'share'})
894 0 0 $sh_cl->{$flag_class}{'share'} ? :
914 0 0 if ($sh_cl->{$flag_class}{'share'})
916 0 0 if (exists $id_subs->{$flag_class} and $id_subs->{$flag_class}{'code'} == \&Object::InsideOut::_ID)
920 0 0 unless (exists $obj_ids->{$share_tree})
924 0 0 unless (exists $reuse->{$share_tree})
928 0 0 unless (defined $r_tree->[0])
936 0 0 if (not exists $GBL{'share'}{'obj'} and $] < 5.008009 || $threads::shared::VERSION lt '1.15')
947 15 158 if (%{$GBL{'sub'}{'auto'};})
952 12 161 if (exists $GBL{'sub'}{'ol'})
958 54 119 if (my $meta_m = delete $GBL{'meta'}{'method'})
966 71 102 if (my $meta_s = delete $GBL{'meta'}{'subr'})
974 58 115 if (my $merge = delete $GBL{'merge'})
989 6 167 if (my $restr = delete $GBL{'perm'}{'restr'})
1006 73 100 if (my $priv = delete $GBL{'perm'}{'priv'})
1023 26 147 if (my $hide = delete $GBL{'perm'}{'hide'})
1036 8 165 if (exists $GBL{'sub'}{'cumu'}{'new'})
1041 5 168 if (exists $GBL{'sub'}{'chain'}{'new'})
1050 12 416 $pkg->isa('Storable') ? :
1057 1022 1299 unless (*{$full_sym;}{'CODE'})
1060 0 1928 if (*{$class_sym;}{'CODE'} and *{$class_sym;}{'CODE'} != \&{$sym;})
1069 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') { }
1100 122 55 unless $new
1116 2 368 if (ref $fld eq 'ARRAY' and $do_ho)
1119 2 3 if ($class eq $ho)
1122 2 0 (caller())[1] =~ /Dynamic/ ? :
1133 0 368 if (is_sharing($pkg) and not threads::shared::is_shared($fld))
1141 0 0 if ($contents)
1142 0 0 if (ref $fld eq 'HASH') { }
1151 368 0 if ($attr)
1156 231 137 unless (grep {$_ == $fld;} @{$$fld_refs{$pkg};})
1168 0 95 if (ref $hash ne 'HASH')
1176 58 124 if ref $spec ne 'HASH'
1178 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) { }
1189 15 0 ref $spec->{$opt} eq 'Regexp' ? :
1208 0 0 $sharing ? :
1211 0 0 if (exists $sh_cl->{$class}) { }
1212 0 0 if ($sh_cl->{$class}{'share'} != $sharing)
1214 0 0 if ($sharing) { }
1236 0 0 if ($sharing and $threads::shared::threads_shared and $threads::shared::VERSION ge '0.95')
1248 1514 0 unless $GBL{'share'}{'ok'}
1260 0 0 if $_[0] ne 'Object::InsideOut'
1264 0 0 if ($threads::threads) { }
1266 0 0 if $GBL{'tid'} == $tid
1270 0 0 if exists $GBL{'pids'}{$$}
1276 0 0 if ($threads::shared::threads_shared and not $GBL{'share'}{'ok'})
1283 0 0 if (exists $GBL{'share'}{'obj'})
1321 0 0 if ($do_repl)
1328 0 0 if ($id_sub == \&Object::InsideOut::_ID) { }
1335 0 0 if (not $g_id->[$tid] or $g_id->[$tid] < $$obj)
1344 0 0 if $] >= 5.008003
1351 0 0 if $] >= 5.008003
1357 0 0 if (ref $fld eq 'HASH') { }
1359 0 0 if ($weak->{'weak'}{$fld})
1365 0 0 if ($weak->{$fld})
1377 0 0 if (@repl)
1400 0 233 if (is_sharing($class)) { }
0 233 elsif ($threads::threads) { }
1404 0 0 if (exists $GBL{'share'}{'obj'})
1407 0 0 if (exists $sh_obj->{$class}) { }
1434 56 89 unless (exists $spec->{' '})
1441 145 395 if $key eq ' '
1442 337 58 ref $val eq 'HASH' ? :
1452 62 418 $regex ? :
1453 43 437 if (defined $found{$key}) { }
1454 20 23 if (defined $value)
1460 451 29 if (defined $arg)
1466 22 145 if (exists $args->{$class})
1468 0 22 if (ref $args ne 'HASH')
1485 195 311 if (ref $spec_item ne 'HASH')
1489 143 52 unless (defined $found{$key})
1496 3 308 if (my $pre = $spec_item->{'_P'})
1497 0 3 if (ref $pre ne 'CODE')
1509 0 3 if ($@ or @errs)
1518 169 142 unless (defined $found{$key})
1520 2 167 if ($spec_item->{'_M'})
1526 76 91 if (exists $spec_item->{'_D'})
1527 36 40 if (ref $spec_item->{'_D'} eq 'CODE') { }
1535 91 76 unless (defined $found{$key})
1542 32 186 if (my $type = $spec_item->{'_T'})
1546 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) { }
1547 0 16 if (ref $type ne 'CODE')
1559 2 14 if ($@ or @errs)
1565 8 6 unless ($ok)
1573 1 1 if (ref $found{$key})
1582 2 2 unless (&Scalar::Util::looks_like_number($found{$key}))
1591 0 6 if (defined $1)
1594 3 3 if (ref $found{$key} ne 'ARRAY')
1602 4 0 if ($type =~ /^(array|hash|scalar)(?:_?ref)?\s*(?:\(\s*(\S+)\s*\))*$/i)
1604 2 2 if (defined $2)
1608 0 4 unless (is_it($found{$key}, $type))
1616 2 17 if (defined $subtype)
1617 0 2 if ($subtype =~ /^scalar$/i) { }
1 1 elsif ($subtype =~ /^num(?:ber|eric)?$/i) { }
1620 0 0 if (ref $elem)
1629 0 3 unless (&Scalar::Util::looks_like_number($elem))
1637 0 2 unless (is_it($elem, $subtype))
1649 191 14 if (my $field = $spec_item->{'_F'})
1666 0 219 if ($class eq 'Object::InsideOut')
1678 109 110 $have_cache ? :
1682 112 107 if ($cache{'pre'} or not $have_cache)
1684 4 108 if (%{$preinit_subs;})
1686 4 4 if (my $preinit = $preinit_subs->{$pkg})
1689 2 2 if ($have_cache) { }
1690 2 0 unless --$cache{'pre'}
1702 132 87 if ($cache{'def'} or not $have_cache)
1704 28 195 if (my $def = $GBL{'fld'}{'def'}{$pkg})
1707 22 6 if ($have_cache) { }
1708 22 0 unless --$cache{'def'}
1721 145 182 if (my $spec = $g_args->{$pkg})
1729 53 259 if (my $init = $init_subs->{$pkg}) { }
81 178 elsif (exists $pkg_args{$pkg}) { }
1 177 elsif (exists $all_args->{$pkg}) { }
1731 49 4 if (exists $pkg_args{$pkg}) { }
1739 2 79 if (%{$pkg_args{$pkg};})
1748 0 1 if (ref $all_args->{$pkg} ne 'HASH')
1760 195 4 if ($used_args)
1764 19 153 if (exists $pkgs{$key}) { }
1766 2 29 unless (exists $used_args->{$key}{$subkey})
1771 3 150 unless (exists $used_args->{$key})
1779 106 88 unless ($have_cache)
1792 3 2 $is_deep ? :
1796 0 5 unless ($class)
1815 0 7 if $am_sharing
1816 0 7 if (ref $fld eq 'HASH') { }
1820 0 0 $am_sharing ? :
0 0 !$fdeep ? :
1821 0 0 if ($weak->{$fld})
1825 0 5 $am_sharing ? :
2 5 !$fdeep ? :
1829 1 6 if ($weak->{$fld})
1836 0 7 if (my $replicate = $repl->{$pkg})
1853 1 18 if ($class eq 'Object::InsideOut')
1870 0 336 unless (&Scalar::Util::blessed($self))
1875 0 336 unless ($self->isa('Object::InsideOut'))
1881 0 336 unless (defined $field)
1887 0 336 if (not $fld_type or $fld_type ne 'ARRAY' and $fld_type ne 'HASH')
1895 0 336 if ($weak and not ref $data)
1902 0 336 if ($GBL{'share'}{'ok'} and threads::shared::is_shared($field)) { }
1904 0 0 if ($fld_type eq 'HASH') { }
1912 68 268 if ($fld_type eq 'HASH') { }
1920 3 333 if ($weak)
1921 0 3 if ($fld_type eq 'HASH') { }
1936 65 225 unless $$self
1945 0 225 if ($threads::shared::threads_shared and not $GBL{'term'})
1950 0 0 exists $GBL{'share'}{'obj'} ? :
1953 0 0 if ($@)
1960 0 225 if ($is_sharing) { }
0 225 elsif ($threads::threads) { }
1964 0 0 if ($GBL{'term'}) { }
0 0 elsif (exists $GBL{'share'}{'obj'}) { }
1965 0 0 if $tid
1969 0 0 unless (exists $$so_cl{$$self})
1983 0 0 if $_ != $tid
0 0 if (@{$$so_cl{$$self};} = grep({$_ == 0 or 'threads'->object($_) if $_ != $tid;} @{$$so_cl{$$self};}))
1995 0 0 unless (exists $$obj_cl{$$self})
2010 6 339 if (my $destroy = $dest_subs->{$pkg})
2023 0 669 if $is_sharing
2024 91 578 if (ref $fld eq 'HASH') { }
2025 0 91 if ($is_sharing)
2027 0 0 unless defined $$fld{$$self}
2031 0 578 if ($is_sharing)
2033 0 0 unless defined $$fld[$$self]
2041 225 0 if $] >= 5.008003
2044 215 10 if ($GBL{'sub'}{'id'}{$class}{'code'} == \&Object::InsideOut::_ID)
2052 3 222 if ($dest_err)
2058 54 171 if ($err or $@)
2060 1 53 if not $err
2070 0 128 unless defined $thing
2073 0 128 if (@_ == 1)
2075 0 0 wantarray ? :
2078 0 128 unless defined $method
2090 0 910 unless defined $thing
2093 0 910 if (@_ == 1)
2098 0 910 unless defined $type
2116 5 0 if (@_ == 4) { }
2128 1 4 if ($@)
2135 0 4 if (is_sharing(ref $obj))
2139 4 0 if ($] >= 5.008003)
2156 0 218 if (exists $dump->{$name} and $fld != $dump->{$name}{'fld'})
2161 21 197 if (my($old_name) = grep({$dump->{$_}{'fld'} == $fld;} keys %$dump))
2163 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') { }
2206 11 7 unless *{$classname . '::' . $symname;}{'CODE'}
2222 5 3 unless $class_delegated_to =~ /::/
2228 2 1 $class_delegated_to->can('meta') ? :
2244 13 27 if not /^(?:new|clone|meta|set)$/ and $methods->{$_}{'class'} eq $class_delegated_to
2259 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) { }
2263 133 0 if $kind =~ /^Field/i
2274 0 12 unless ($decl =~ s/'?name'?\s*=>/'${kind}'=>/i)
2285 93 142 unless ($decl =~ /^{/)
2294 0 235 if ($@ or @errs)
2308 197 38 unless ($kind =~ /^arg$/i)
2314 16 268 if ($key_uc =~ /ALL/) { }
4 264 elsif ($key_uc =~ /R(?:EAD)?O(?:NLY)?/) { }
2 262 elsif ($key_uc =~ /ARG/) { }
2316 16 0 if ($key_uc eq 'ALL')
2321 3 1 if ($key_uc =~ /^R(?:EAD)?O(?:NLY)?$/)
2330 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') { }
2340 133 11 if ($key_uc =~ /ACC|COM|MUT|GET/)
2344 90 54 if ($key_uc =~ /ACC|COM|MUT|SET/)
2350 0 0 if (uc $val eq 'DEEP')
2355 0 0 if ($val)
2362 0 0 if ($val)
2370 0 62 if (not $val or ref $val and ref $val ne 'CODE')
2377 52 10 unless (ref $val)
2380 6 46 if ($val =~ /^(.*)\((.+)\)$/i)
2383 3 3 if ($subtype =~ /^num(?:ber|eric)?$/i) { }
0 3 elsif ($subtype =~ /^scalar$/i) { }
2389 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) { }
2400 6 46 if ($subtype)
2422 4 0 if ($key_uc =~ /^PERM/) { }
0 0 elsif ($key_uc =~ /^PRIV/) { }
0 0 elsif ($key_uc =~ /^REST/) { }
2423 1 3 if ($val =~ /^PRIV/i) { }
3 0 elsif ($val =~ /^REST/i) { }
2436 0 0 if ($val)
2440 0 0 if ($val)
2447 9 5 if ($val and not &Scalar::Util::looks_like_number($val)) { }
2458 0 0 if (ref $pre ne 'CODE')
2478 0 222 if (not defined $val or $val eq '')
2487 60 175 if ($arg or $kind =~ /^ARG$/i)
2489 28 32 unless (exists $g_args->{$pkg})
2493 38 22 unless ($arg)
2497 60 0 unless (defined $name)
2502 14 46 if ($fld_type->{$field_ref} and not exists $g_args->{$arg}{'_T'})
2507 23 37 if (my $g_def = delete $GBL{'fld'}{'def'}{$pkg})
2510 8 92 if ($field_ref == $item->[0]) { }
2516 22 1 if (@defs)
2527 63 172 if ($name) { }
138 34 elsif ($get) { }
3 31 elsif ($set) { }
27 4 elsif (not $return || $lvalue || $delegate) { }
2528 0 63 if (add_dump_field('Name', $name, $field_ref, $dump) eq 'conflict')
2535 39 0 unless ($get or $set or $return or $lvalue)
2539 0 138 if (add_dump_field('Get', $get, $field_ref, $dump) eq 'conflict')
2546 0 3 if (add_dump_field('Set', $set, $field_ref, $dump) eq 'conflict')
2557 0 169 if ($return || $lvalue and not $set)
2566 280 58 if ($method)
2569 0 280 if (*{$pkg . '::' . $method;}{'CODE'})
2579 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)?$/) { }
2594 63 106 if ($fld_type->{$field_ref})
2596 52 11 unless (ref $type)
2597 5 47 if ($type =~ /^(.*)\((.+)\)$/i)
2601 9 43 if ($type =~ /^(HASH|ARRAY|SCALAR)_ref$/)
2607 0 5 if ($subtype and ($type ne 'list' and $type ne 'ARRAY'))
2616 118 51 if ($set)
2617 88 30 $get && $get eq $set ? :
2618 14 104 if ($lvalue)
2623 9 109 if (ref $type) { }
48 61 elsif ($type ne 'NONE') { }
2628 5 113 if ($subtype)
2632 74 88 if ($get and !$set || $get ne $set)
2636 58 280 unless $meth
2638 2 278 if (defined $private) { }
5 273 elsif (defined $restricted) { }
2652 14 155 if ($lvalue) { }
104 51 elsif ($set) { }
2666 16 88 ref $field_ref eq 'HASH' ? :
2669 77 27 if ($get and $get eq $set) { }
2685 0 104 if ($pre)
2710 0 104 if (is_sharing($pkg))
2715 6 98 if ($return eq 'OLD')
2720 0 104 is_sharing($pkg) ? :
2723 1 103 if ($weak)
2728 5 99 if ($return eq 'SELF') { }
6 93 elsif ($return eq 'OLD') { }
4 89 elsif ($use_want) { }
1 88 elsif ($weak) { }
2731 4 2 if ($use_want)
2744 158 11 unless ref $type
2747 74 88 if ($get and !$set || $get ne $set)
2748 11 63 ref $field_ref eq 'HASH' ? :
2758 7 162 if ($delegate)
2765 9 3 unless (defined $to)
2769 0 12 if (*{$pkg . '::' . $from;}{'CODE'})
2775 0 12 ref $field_ref eq 'HASH' ? :
2794 37 47 if (@_ > 1)
13 46 if (@_ > 1)
9 43 if (@_ > 1)
9 37 if (@_ > 1)
14 38 if (@_ > 1)
9 38 if (@_ > 1)
4 34 if @_ == 1
5 27 if (@_ > 1)
17 21 if (@_ < 2)
2796 0 169 if ($@ or @errs)
2815 74 130 if (defined $readonly)
2824 2 202 if (defined $private) { }
3 199 elsif (defined $restricted) { }
2855 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) { }
2877 1 60 if ($weak)
2957 5 113 if ($subtype)
2958 0 5 if ($subtype =~ /^scalar$/i) { }
3 2 elsif ($subtype =~ /^num(?:ber|eric)?$/i) { }
3011 78 206 if (ref $arg eq 'HASH') { }
0 206 elsif (ref $arg) { }
0 206 elsif (not @_) { }
3042 4 33 unless (grep {$_ eq $caller;} @$exempt or $caller->isa($pkg) or $pkg->isa($caller))
3061 4 4279 unless (grep {$_ eq $caller;} @$exempt)
3088 59 0 if (not exists $INC{$file})
3093 0 59 if ($@) { }
0 59 elsif (not defined $rc) { }
0 59 elsif (not $rc) { }
3241 49 57 if ($_[0] eq 'Object::InsideOut')