line |
true |
false |
branch |
218
|
19 |
66 |
unless exists $types{$class}
|
220
|
0 |
85 |
if $abstract{$class}
|
223
|
3 |
82 |
if (ref $invocant) { }
|
243
|
0 |
79 |
unless my $class = ref $self
|
249
|
30 |
66 |
if exists $$self{$attribute}
|
252
|
41 |
25 |
if (ref $default eq 'CODE') { }
|
|
0 |
25 |
elsif (ref $default eq 'HASH') { }
|
|
0 |
25 |
elsif (ref $default eq 'ARRAY') { }
|
276
|
21 |
58 |
if (my $required = $required_attributes{$class})
|
284
|
18 |
3 |
unless (caller($i) =~ /^Tangram::/)
|
287
|
8 |
34 |
unless exists $$self{$attribute}
|
290
|
6 |
12 |
if @missing
|
308
|
1 |
20 |
if exists $passed{$field}
|
338
|
0 |
86 |
unless UNIVERSAL::isa($self, 'Class::Tangram')
|
340
|
0 |
86 |
unless exists $check{$class}
|
341
|
0 |
86 |
if scalar @_ & 1
|
348
|
1 |
146 |
unless $self->can($setter) or $self->can('AUTOLOAD')
|
367
|
0 |
0 |
unless @_
|
368
|
0 |
0 |
unless UNIVERSAL::isa($self, 'Class::Tangram')
|
371
|
0 |
0 |
unless exists $check{$class}
|
378
|
0 |
0 |
unless $self->can($getter) or $self->can('AUTOLOAD')
|
381
|
0 |
0 |
if ($multiget) { }
|
472
|
2 |
0 |
is_key($_) ? :
|
477
|
2 |
0 |
is_key($_) ? :
|
497
|
0 |
13 |
if $t and $t =~ /^Tangram/
|
511
|
0 |
15 |
if $t and $t =~ /^Tangram/
|
513
|
0 |
15 |
if (@_) { }
|
517
|
0 |
0 |
if (defined $key)
|
518
|
0 |
0 |
if (defined(my $n = ish_int($key))) { }
|
521
|
0 |
0 |
if $^W
|
529
|
0 |
0 |
if (wantarray or @rv > 1) { }
|
535
|
7 |
8 |
if (wantarray) { }
|
553
|
0 |
112 |
if $t and $t =~ /^Tangram/
|
555
|
2 |
110 |
if (@_) { }
|
561
|
3 |
0 |
if (defined $key and @members)
|
565
|
1 |
1 |
if (wantarray or @rv > 1) { }
|
571
|
30 |
80 |
if (wantarray) { }
|
589
|
0 |
11 |
if $t and $t =~ /^Tangram/
|
591
|
2 |
9 |
if (@_) { }
|
595
|
2 |
0 |
if (defined $key)
|
599
|
0 |
2 |
if (wantarray or @rv > 1) { }
|
605
|
0 |
9 |
if (wantarray) { }
|
649
|
19 |
1 |
if (blessed $value) { }
|
650
|
0 |
19 |
if ($value->isa('Set::Object')) { }
|
657
|
0 |
1 |
if ($ref eq 'ARRAY') { }
|
|
0 |
1 |
elsif ($ref eq 'HASH') { }
|
|
1 |
0 |
elsif (defined $value) { }
|
667
|
20 |
1 |
if (@ncc)
|
668
|
20 |
0 |
if (my $checkit = \$check{$class}{$X}) { }
|
672
|
0 |
0 |
if (@ncc > 1)
|
673
|
0 |
0 |
if $^W
|
678
|
0 |
0 |
unless ref $ncc[0]
|
686
|
6 |
14 |
if ($companion and refaddr($$self{$X}) != refaddr $old)
|
691
|
0 |
1 |
if $old and $old->can($remove) and $old->can($includes) and $old->$includes($self)
|
696
|
2 |
3 |
if $chosen and $chosen->can($insert) and $chosen->can($includes) and not $chosen->$includes($self)
|
716
|
25 |
36 |
if (@_ == 1 and not $companion and UNIVERSAL::isa($_[0], 'Set::Object'))
|
718
|
25 |
0 |
if (my $checkit = \$check{$class}{$X})
|
729
|
81 |
3 |
if (blessed $value) { }
|
730
|
46 |
35 |
if ($value->isa('Set::Object')) { }
|
737
|
2 |
1 |
if ($ref eq 'ARRAY') { }
|
|
1 |
0 |
elsif ($ref eq 'HASH') { }
|
|
0 |
0 |
elsif (defined ish_int($value)) { }
|
751
|
59 |
9 |
if ($companion)
|
754
|
31 |
28 |
$$self{$X} ? :
|
759
|
68 |
0 |
if (my $checkit = \$check{$class}{$X})
|
765
|
59 |
9 |
if ($companion)
|
773
|
9 |
50 |
if ($gone->size)
|
776
|
5 |
2 |
if ($gonner->can($remove_func) and $gonner->can($includes_func) and $gonner->$includes_func($self))
|
784
|
23 |
36 |
if ($added->size)
|
787
|
15 |
7 |
if ($new_mate->can($insert_func) and $new_mate->can($includes_func) and not $new_mate->$includes_func($self))
|
809
|
0 |
6 |
if (@_ == 1 and not $companion and ref $_[0] eq 'ARRAY')
|
811
|
0 |
0 |
if (my $checkit = \$check{$class}{$X})
|
821
|
7 |
1 |
if (blessed $value) { }
|
822
|
0 |
7 |
if ($value->isa('Set::Object')) { }
|
829
|
1 |
0 |
if ($ref eq 'ARRAY') { }
|
|
0 |
0 |
elsif ($ref eq 'HASH') { }
|
|
0 |
0 |
elsif (defined ish_int($value)) { }
|
843
|
7 |
0 |
if ($companion)
|
847
|
0 |
7 |
blessed($$self{$X}) ? :
|
852
|
7 |
0 |
if (my $checkit = $check{$class}{$X}) { }
|
861
|
7 |
0 |
if ($companion)
|
869
|
0 |
7 |
if ($gone->size)
|
872
|
0 |
0 |
if ($gonner->can($remove_func) and $gonner->can($includes_func) and $gonner->$includes_func($self))
|
880
|
7 |
0 |
if ($new->size)
|
883
|
1 |
6 |
if ($new_mate->can($insert_func) and $new_mate->can($includes_func) and not $new_mate->$includes_func($self))
|
905
|
0 |
1 |
if (@_ == 1 and not $companion and ref $_[0] eq 'HASH')
|
907
|
0 |
0 |
if (my $checkit = \$check{$class}{$X})
|
918
|
3 |
1 |
if (blessed $item and $item->can(my $meth = "${X}_hek")) { }
|
928
|
4 |
3 |
if (blessed $value) { }
|
929
|
0 |
4 |
if ($value->isa('Set::Object')) { }
|
936
|
0 |
3 |
if ($ref) { }
|
|
0 |
3 |
elsif (defined ish_int($value)) { }
|
937
|
0 |
0 |
if ($ref eq 'ARRAY') { }
|
|
0 |
0 |
elsif ($ref eq 'HASH') { }
|
956
|
3 |
0 |
if (my $checkit = \$check{$class}{$X})
|
962
|
2 |
1 |
if ($companion)
|
974
|
0 |
2 |
if ($gone->size)
|
977
|
0 |
0 |
if ($gonner->can($remove_func) and $gonner->can($includes_func) and $gonner->$includes_func($self))
|
985
|
1 |
1 |
if ($new->size)
|
988
|
3 |
0 |
if ($new_mate->can($insert_func) and $new_mate->can($includes_func) and not $new_mate->$includes_func($self))
|
1016
|
42 |
0 |
if (blessed($item = shift()) or reftype $item) { }
|
|
0 |
0 |
elsif (defined(my $x = ish_int($item))) { }
|
1017
|
19 |
23 |
unless $a->includes($item)
|
1019
|
0 |
0 |
if $x > $a->size
|
1023
|
19 |
23 |
unless $all_there
|
1035
|
5 |
0 |
if (blessed(my $item = shift())) { }
|
|
0 |
0 |
elsif (defined(my $x = ish_int($item))) { }
|
1036
|
3 |
2 |
unless refaddr($self->$getter) == refaddr $item
|
1039
|
0 |
0 |
if $x
|
1041
|
3 |
2 |
unless $all_there
|
1055
|
7 |
0 |
if (blessed(my $item = shift())) { }
|
|
0 |
0 |
elsif (defined(my $x = ish_int($item))) { }
|
1058
|
5 |
2 |
unless $members->includes($item)
|
1060
|
0 |
0 |
unless $x >= 0 and $x < @$a
|
1061
|
0 |
0 |
if (blessed($_[0]))
|
1063
|
0 |
0 |
unless refaddr($$a[$x]) == refaddr $item
|
1066
|
5 |
2 |
unless $all_there
|
1080
|
4 |
0 |
if (blessed(my $item = shift())) { }
|
|
0 |
0 |
elsif (defined(my $x = ish_int($item))) { }
|
|
0 |
0 |
elsif (not ref $item) { }
|
1083
|
0 |
4 |
unless $members->includes($item)
|
1089
|
0 |
0 |
unless exists $$a{$item}
|
1090
|
0 |
0 |
if (blessed($_[0]))
|
1093
|
0 |
0 |
unless refaddr($$a{$key}) == refaddr $item
|
1096
|
0 |
4 |
unless $all_there
|
1149
|
6 |
0 |
if (blessed $value) { }
|
1150
|
0 |
6 |
if ($value->isa('Set::Object')) { }
|
1157
|
0 |
0 |
if ($ref eq 'ARRAY') { }
|
|
0 |
0 |
elsif ($ref eq 'HASH') { }
|
|
0 |
0 |
elsif (defined ish_int($value)) { }
|
1261
|
0 |
0 |
$self->$getter ? :
|
1343
|
0 |
0 |
if (wantarray) { }
|
1359
|
0 |
0 |
if (my $val = $self->$getter(0)) { }
|
1364
|
0 |
0 |
wantarray ? :
|
1384
|
0 |
0 |
if defined $key
|
1423
|
0 |
0 |
if (wantarray) { }
|
1439
|
0 |
0 |
if (wantarray) { }
|
1469
|
0 |
16 |
$_->isa('Set::Object') ? :
|
|
0 |
0 |
ref $_ eq 'ARRAY' ? :
|
|
0 |
0 |
ref $_ eq 'HASH' ? :
|
|
16 |
0 |
blessed $_ ? :
|
1510
|
0 |
0 |
if (blessed $item) { }
|
|
0 |
0 |
elsif (defined ish_int($item)) { }
|
1512
|
0 |
0 |
if refaddr $item == refaddr($new[$i])
|
1519
|
0 |
0 |
unless $gone{$i}
|
1536
|
0 |
0 |
if (blessed $item) { }
|
|
0 |
0 |
elsif (blessed($_[0])) { }
|
1538
|
0 |
0 |
if refaddr $item == refaddr $v
|
1544
|
0 |
0 |
if defined ish_int($item)
|
1663
|
1 |
85 |
if length ${$_[0];} > 255
|
1675
|
1 |
8 |
unless is_int ${$_[0];} or ${$_[0];} + 0 eq ${$_[0];}
|
1694
|
1 |
6 |
unless is_double ${$_[0];} or is_int ${$_[0];} or ${$_[0];} =~ /$real_re/
|
1707
|
1 |
19 |
unless blessed ${$_[0];} or not ${$_[0];}
|
1720
|
0 |
3 |
if ref ${$_[0];} ne 'ARRAY'
|
1721
|
0 |
0 |
ref $_ ? :
|
1722
|
0 |
3 |
if map {ref $_ ? '1' : ();} @${$_[0];}
|
1737
|
1 |
1 |
unless ${$_[0];} =~ /$rawdate_re/o
|
1750
|
1 |
1 |
unless ${$_[0];} =~ /$rawtime_re/o
|
1772
|
2 |
7 |
unless ${$_[0];} =~ /$rawdatetime_re/o
|
1785
|
1 |
1 |
unless ${$_[0];} =~ /^\d{10}:\d\d:\d\d$|$rawdatetime_re/o or Date::Manip::ParseDate(${$_[0];})
|
1798
|
0 |
3 |
unless ref ${$_[0];} eq 'HASH'
|
1800
|
0 |
0 |
if ref $k or ref $v
|
1813
|
0 |
93 |
unless UNIVERSAL::isa(${$_[0];}, 'Set::Object')
|
1824
|
0 |
3 |
unless reftype ${$_[0];} eq 'HASH'
|
1835
|
0 |
7 |
unless reftype ${$_[0];} eq 'ARRAY'
|
1872
|
1 |
0 |
unless defined $t and $t =~ /Tangram::CollOnDemand/
|
1889
|
0 |
34 |
if defined $t and $t =~ /Tangram::CollOnDemand/
|
1890
|
33 |
1 |
if (ref $$self{$attr} eq 'Set::Object')
|
1906
|
2 |
0 |
unless defined $t and $t =~ /Tangram::CollOnDemand/
|
1967
|
23 |
4 |
unless ($$option{'sql'})
|
1983
|
0 |
4 |
if ($$option{'sql'} =~ /^\s*(?:var)?char\s*\(\s*(\d+)\s*\)/xi) { }
|
|
0 |
4 |
elsif ($$option{'sql'} =~ /^\s*(?:tiny|long|medium)?
(?:blob|text)/xi) { }
|
|
2 |
2 |
elsif (my($members) = $$option{'sql'} =~ /^\s*set\s*$Class::Tangram::sql_list/io) { }
|
|
2 |
0 |
elsif (my($values) = $$option{'sql'} =~ /^\s*enum\s*$Class::Tangram::sql_list/io) { }
|
1987
|
0 |
0 |
if length ${$_[0];} > $max_length
|
1999
|
0 |
0 |
$1 eq 'tiny' ? :
|
|
0 |
0 |
$1 ? :
|
2003
|
0 |
0 |
if ${$_[0];} and length ${$_[0];} > $max_length
|
2022
|
2 |
8 |
unless exists $members{lc $x}
|
2044
|
2 |
4 |
if not exists $values{lc ${$_[0];}}
|
2094
|
0 |
0 |
if ($@)
|
2120
|
0 |
70 |
unless exists $cleaners{$class}
|
2125
|
48 |
143 |
if (defined $cleaners{$class}{$k} and exists $$self{$k})
|
2154
|
0 |
1 |
unless exists $cleaners{$class}
|
2158
|
1 |
0 |
if (defined $cleaners{$class}{$k} and exists $$self{$k})
|
2282
|
11 |
33 |
if exists $abstract{$class}
|
2298
|
33 |
0 |
if (my(@stack) = grep((!/$class::CT/), @{"${class}::ISA";}))
|
2304
|
17 |
26 |
if (defined ${"${super}::schema";} or defined ${"${super}::fields";}) { }
|
2312
|
0 |
4 |
unless ($fields or @$bases)
|
2329
|
4 |
29 |
$abstract ? :
|
2333
|
33 |
0 |
if (defined $bases)
|
2334
|
0 |
33 |
unless ref $bases eq 'ARRAY'
|
2341
|
3 |
14 |
unless exists $check{$super}
|
2367
|
43 |
46 |
if (ref $v eq 'ARRAY')
|
2381
|
954 |
0 |
unless $target_pkg->can($accessor_name)
|
2389
|
0 |
33 |
if $@
|
2407
|
111 |
3 |
if (ref $options eq 'HASH' or UNIVERSAL::isa($options, 'Tangram::Type'))
|
2417
|
114 |
0 |
if (ref $def eq 'HASH')
|
2420
|
27 |
87 |
if ($$def{'parse'} and not $check_func && $cleaner)
|
2430
|
108 |
6 |
unless defined $default
|
2434
|
7 |
107 |
unless ($no_tangram or not defined $load)
|
2435
|
7 |
0 |
unless (exists $INC{$load})
|
2437
|
7 |
0 |
if $@
|
2442
|
0 |
114 |
unless ref $check_func eq 'CODE'
|
2448
|
0 |
111 |
if $^W and exists $types{$class}{$attribute} and not $dontcarp
|
2463
|
51 |
63 |
if ($type =~ /^i?(set|array|hash|ref)$/) { }
|
2477
|
63 |
51 |
unless ($is_assoc or $set_closure)
|
2481
|
27 |
36 |
if ($type eq 'string') { }
|
2486
|
122 |
10 |
if (defined $value and length $value) { }
|
|
4 |
6 |
elsif ($required) { }
|
|
6 |
0 |
elsif (defined $required) { }
|
2491
|
0 |
6 |
unless defined $value
|
2494
|
4 |
120 |
if $err
|
2504
|
49 |
0 |
if (defined $value) { }
|
|
0 |
0 |
elsif ($required) { }
|
|
0 |
0 |
elsif (defined $required) { }
|
2509
|
0 |
0 |
unless defined $value
|
2512
|
0 |
40 |
if $err
|
2521
|
6 |
108 |
if ($type =~ /^flat_(array|hash)$/)
|
2522
|
3 |
3 |
if ($1 eq 'hash') { }
|
2526
|
1 |
4 |
wantarray ? :
|
2533
|
1 |
4 |
wantarray ? :
|
2547
|
63 |
51 |
ref $get_closure ? :
|
2554
|
63 |
51 |
ref $set_closure ? :
|
2556
|
51 |
63 |
if ($is_assoc) { }
|
2575
|
0 |
24 |
if (@_ and looks_like_KVKV(@_)) { }
|
|
24 |
0 |
elsif (not @_ or looks_like_KK(@_)) { }
|
2576
|
0 |
0 |
if $^W
|
2593
|
0 |
33 |
if (@_) { }
|
2594
|
0 |
0 |
if $^W
|
2604
|
51 |
63 |
if defined $cleaner
|
2606
|
25 |
89 |
if defined $default
|
2608
|
3 |
111 |
if defined $required
|
2612
|
22 |
92 |
if defined $companion
|
2760
|
0 |
0 |
if (not defined $class) { }
|
2786
|
0 |
0 |
if $class eq 'Class::Tangram'
|
2788
|
0 |
0 |
unless exists $cleaners{$class}
|
2803
|
0 |
2 |
unless exists $init_defaults{$class}
|
2820
|
7 |
0 |
if ($@) { }
|