Branch Coverage

lib/DBIx/Struct.pm
Criterion Covered Total %
branch 295 1108 26.6


line true false branch
56 0 0 @_ ? :
57 0 0 if $off < 0
58 0 0 @_ ? :
116 0 0 unless (ref $$value_ref)
117 0 0 if $$value_ref
118 0 0 if $jv
120 0 0 if (not defined $$value_ref) { }
0 0 elsif ('HASH' eq ref $$value_ref) { }
0 0 elsif ('ARRAY' eq ref $$value_ref) { }
135 0 0 defined $_[0][1] ? :
157 0 0 if $dbh
158 0 0 if $try != $db_reconnect_timeout
160 0 0 if $@
298 0 0 if 'HASH' ne ref $hashref
318 0 0 if (\&DBIx::Struct::connector != \&DBIx::Struct::connector_from_pool)
341 0 0 if 'CODE' ne ref $_[0]
353 3 0 unless $er
364 3 1 if ($args[$i] eq 'connector_module') { }
0 1 elsif ($args[$i] eq 'connector_constructor') { }
0 1 elsif ($args[$i] eq 'camel_case_map' and 'CODE' eq ref $args[$i]) { }
1 0 elsif ($args[$i] eq 'user_schema_namespace') { }
0 0 elsif ($args[$i] eq 'table_classes_namespace') { }
0 0 elsif ($args[$i] eq 'query_classes_namespace') { }
0 0 elsif ($args[$i] eq 'connect_timeout') { }
0 0 elsif ($args[$i] eq 'error_class') { }
0 0 elsif ($args[$i] eq 'connector_pool') { }
0 0 elsif ($args[$i] eq 'connector_pool_method') { }
0 0 elsif ($args[$i] eq 'connector_args') { }
0 0 elsif ($args[$i] eq 'connector') { }
0 0 elsif ($args[$i] eq 'connector_object') { }
367 0 3 if (not $defconn and check_package_scalar($connector_module, 'conn'))
413 0 3 if ($_emc)
418 0 3 if ($_cp)
427 0 3 if $_c
433 2 0 unless ($connector_pool or $conn)
435 0 2 if ($dsn and not $dsn =~ /^dbi:/iu)
444 0 2 if ($dsn)
446 0 0 if ($driver)
447 0 0 if ($driver eq 'Pg') { }
0 0 elsif ($driver eq 'mysql') { }
0 0 elsif ($driver eq 'SQLite') { }
456 2 0 unless (@$connector_args)
459 0 2 unless $conn = $connector_module->$connector_constructor(@$connector_args)
485 30 5 if ($simple_table) { }
501 0 2 unless $sth
507 6 0 if $_->[3] eq 'TABLE'
513 3 3 if ($user_schema_namespace)
518 0 3 if (keys %{"${user_schema_namespace}::${uncn}::";} and not do { "${user_schema_namespace}::${uncn}::" }->{'ISA'} && "${user_schema_namespace}::$uncn"->isa($ncn))
559 0 20 unless $find =~ s/^find(?.*?)By(?![[:lower:]])//u or $find =~ s/^find(?.*)//u
568 16 4 unless $find =~ s/OrderBy(?.*?)(?Asc|Desc)(?=[[:upper:]]|$)//u
573 2 18 if ($type eq 'First' and not $limit)
576 3 17 if ($limit and $limit == 1)
584 4 471 if ($param =~ s/$uneq[$i]//u)
591 4 22 if ($found) { }
592 1 3 if ('CODE' eq ref $uneq[$found]) { }
609 9 7 /And(?![[:lower:]])/u ? :
614 5 15 $type eq 'One' ? :
615 7 13 $column ? :
616 6 0 $flags ? :
6 14 $distinct ? :
617 4 1 $asc eq 'Asc' ? :
5 15 $order ? :
623 16 4 $conds ? :
624 6 14 $limit && $limit > 1 && $type ne 'One' ? :
626 7 13 if $column
645 6 4 unless (ref $table)
699 0 6 if ($required)
831 6 4 if (not ref $table) { }
944 6 4 if (not ref $table) { }
998 6 4 unless (ref $table)
1031 6 4 if (not ref $table) { }
1075 39 10 if (grep {not /::$/u;} keys %{"${ncn}::";})
1084 0 0 unless ref $interface
1085 0 0 if ('ARRAY' eq ref $interface) { }
0 0 elsif ('HASH' eq ref $interface) { }
1088 0 0 unless &_exists_row($dbc_name)
1095 0 0 if ($href and %$href)
1103 0 0 unless &_exists_row($dbc_name)
1110 0 0 unless $href and %$href
1112 0 0 unless ref $fl
1113 0 0 if ('ARRAY' eq ref $fl) { }
1116 0 0 if exists $href->{$m}
1142 0 4 $field_types->{$_} eq 'json' ? :
0 4 $field_types->{$_} eq 'boolean' ? :
16 4 $field_types->{$_} eq 'number' ? :
1193 0 20 unless defined $type_name
1194 16 4 if ($type_name =~ /int(\d+)?$/iu or $type_name =~ /integer/iu or $type_name =~ /bit$/u or $type_name =~ /float|double|real|decimal|numeric/iu) { }
0 4 elsif ($type_name =~ /json/iu) { }
0 4 elsif ($type_name =~ /bool/iu) { }
0 4 elsif ($type_name =~ /date/iu and $type_name =~ /time/iu) { }
0 4 elsif ($type_name =~ /date/iu) { }
0 4 elsif ($type_name =~ /time/iu) { }
1217 5 18 if ($user_schema_namespace)
1221 2 3 if (do { "${user_schema_namespace}::${uncn}::" }->{'ISA'} and "${user_schema_namespace}::$uncn"->isa($ncn))
1237 0 49 unless exists $driver_pk_insert{$connector_driver}
1239 39 10 if &_exists_row($ncn)
1251 6 4 if (not ref $table) { }
1256 0 6 unless $ssth
1261 0 6 unless $ssth->execute
1268 0 6 unless $cih
1278 0 12 if ($chr->{'TYPE_NAME'} =~ /^time/iu)
1281 0 12 if ($chr->{'TYPE_NAME'} =~ /^json/iu)
1285 0 12 if ($chr->{'NULLABLE'} == 0 and not defined $chr->{'COLUMN_DEF'})
1292 0 6 if (not @pkeys and @required)
1297 0 0 if (not exists $req{$ukr->{'COLUMN_NAME'}} or defined $ukr->{'FILTER_CONDITION'}) { }
1305 0 0 if (%pkeys)
1312 6 0 if ($sth)
1314 4 0 if $_->{'PKTABLE_NAME'} or $_->{'UK_TABLE_NAME'}
1317 0 4 if $_->{'FKCOLUMN_NAME'}
1318 0 4 if $_->{'FKTABLE_NAME'}
1323 4 0 if $_->{'PKTABLE_NAME'}
1324 4 0 if $_->{'PKCOLUMN_NAME'}
1329 6 0 if ($sth)
1331 4 0 if $_->{'PKTABLE_NAME'} or $_->{'UK_TABLE_NAME'}
1334 0 4 if $_->{'FKCOLUMN_NAME'}
1335 0 4 if $_->{'FKTABLE_NAME'}
1362 0 8 if $ti->{'TYPE_NAME'} and $ti->{'TYPE_NAME'} =~ /^time/u
1364 0 8 if $ti->{'TYPE_NAME'} and $ti->{'TYPE_NAME'} =~ /^json/u
1373 0 10 if (@required)
1377 0 10 if (@timestamp_fields) { }
1397 4 6 if (@pkeys) { }
1409 2 4 if (@fields) { }
1434 0 4 unless $fn_suffix =~ s/^${pk}_*//iu or $fn_suffix =~ s/_$pk(?=[^a-z]|$)//iu
1466 4 0 if ($pk ne $fk)
1468 0 4 unless $fn =~ s/^${pk}_*//iu or $fn =~ s/_$pk(?=[^a-z]|$)//iu
1470 0 4 if $fn
1513 0 20 if exists $keywords{$k}
1514 0 20 if $k =~ /^\d/u
1516 20 0 if (not exists $json_fields{$k}) { }
1517 8 12 if (not exists $pk_fields{$k} || ref $table) { }
1541 0 0 if (not exists $pk_fields{$k} || ref $table) { }
1600 6 4 if (not ref $table) { }
1601 6 0 if (%fkfuncs) { }
1630 6 4 if (not ref $table) { }
1645 0 0 if (&Scalar::Util::blessed($self))
0 0 unless $self and "$self"->can('tableName') and $method =~ /^find/u
0 0 if $@
0 0 if (&Scalar::Util::blessed($self))
0 0 unless $self and "$self"->can('tableName') and $method =~ /^find/u
0 0 if $@
0 0 if (&Scalar::Util::blessed($self))
0 0 unless $self and "$self"->can('tableName') and $method =~ /^find/u
0 0 if $@
4 0 if $DBIx::Struct::update_on_destroy
8 0 if $DBIx::Struct::update_on_destroy
5 0 if $DBIx::Struct::update_on_destroy
0 0 if (defined $_[0]->id_list) { }
3 0 if (defined $_[0]->id_prim) { }
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless exists $fields{$_}
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 if (@columns) { }
0 0 if (@refs)
0 0 unless $_->do('delete from pl_assoc where ', undef)
0 1 unless $_->do("delete from list $where", @rpar)
0 0 unless $_->do("delete from pl_assoc $where", @rpar)
0 0 unless my $rowref = $_->selectrow_arrayref("select * from prim $where", undef, @bind)
0 3 unless ($self->[0][0]) = $_->selectrow_array($insert . ' returning id', undef, @bind)
0 3 unless $_->do($update_query, undef, @bind, $self->[0][0])
0 0 unless $_->do('delete from prim where id = ?', undef, $self->[0][0])
0 0 unless ($self->[0][0]) = $_->selectrow_array($insert . ' returning id', undef, @bind)
0 0 unless my $rowref = $_->selectrow_arrayref("select * from list $where", undef, @bind)
0 0 unless $_->do($update_query, undef, @bind, $self->[0][0])
0 0 unless my $rowref = $_->selectrow_arrayref('select * from list where id = ?', undef, $self->[0][0])
0 0 unless my $rowref = $_->selectrow_arrayref('select * from prim where id = ?', undef, $self->[0][0])
0 0 unless $_->do("delete from prim $where", @rpar)
0 0 unless $_->do($insert, undef, @bind)
0 1 unless $_->do("update list set $set $where", undef, @bind, @bind_where)
0 0 unless $_->do("update prim set $set $where", undef, @bind, @bind_where)
0 0 unless $_->do('delete from list where id = ?', undef, $self->[0][0])
0 0 unless $_->do($update_query, undef, @bind)
0 0 unless my $rowref = $_->selectrow_arrayref('select * from pl_assoc where ', undef)
0 0 unless my $rowref = $_->selectrow_arrayref("select * from pl_assoc $where", undef, @bind)
0 0 unless $_->do("update pl_assoc set $set $where", undef, @bind, @bind_where)
0 0 if (@_ > 1)
0 0 if (@_ > 1)
0 0 if (@_ > 1)
0 0 if (@_ > 1)
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][0]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 !defined($self->[0][1]) ? :
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 0 if (not @{$_[1];}) { }
0 0 if exists $fields{$k}
0 0 if (ref $_[1] eq 'ARRAY') { }
0 0 if (defined $_[1]) { }
0 0 if @unknown_columns
0 0 unless defined $ret
0 1 if (&Scalar::Util::blessed($self))
1 0 if @_ > 1
0 0 unless defined $keys[$i - 1]
0 1 unless (CORE::ref $cond)
1 0 if ($cond)
0 0 if (&Scalar::Util::blessed($self))
0 0 if @_ > 1
0 0 unless defined $keys[$i - 1]
0 0 unless (ref $cond)
0 0 if ($cond)
0 0 if (&Scalar::Util::blessed($self))
0 0 if @_ > 1
0 0 unless defined $keys[$i - 1]
0 0 unless (ref $cond)
0 0 if ($cond)
0 0 unless (ref $cond)
0 0 if (@_ > 1) { }
0 0 unless (CORE::ref $cond)
0 0 if (@_ > 1) { }
0 0 unless (ref $cond)
0 0 if (@_ > 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if ($self->[0][$fields{$f}])
0 0 if ($self->[0][$fields{$f}])
0 0 if (@_ == 1) { }
0 0 if (@_ > 1)
0 6 if (@_ > 1)
0 0 if exists $fields{$_[1]}
0 0 if exists $fields{$_[1]}
0 0 if exists $fields{$_[1]}
0 0 if exists $fields{$_[1]}
0 0 if exists $fields{$_[1]}
0 0 if exists $fields{$_[1]}
0 0 if exists $fields{$_[1]}
1 0 if (defined $_[1] and CORE::ref $_[1] eq 'ARRAY')
1 0 if (defined $_[1] and CORE::ref $_[1] eq 'ARRAY')
3 0 if (exists $fields{$_[$i]}) { }
0 0 if (defined ${$insert{$_};}->[0]) { }
1 2 if (CORE::ref $insert{$_} eq 'ARRAY' and CORE::ref $insert{$_}[0] eq 'SCALAR') { }
0 2 elsif (CORE::ref $insert{$_} eq 'REF' and CORE::ref ${$insert{$_};} eq 'ARRAY') { }
1 1 elsif (CORE::ref $insert{$_} eq 'SCALAR') { }
2 1 elsif (exists $json_fields{$_} and CORE::ref $insert{$_} eq 'ARRAY' || CORE::ref $insert{$_} eq 'HASH') { }
5 0 if (%insert) { }
4 3 if (defined $_[1] and CORE::ref $_[1] eq 'ARRAY') { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (defined ${$insert{$_};}->[0]) { }
0 0 if (ref $insert{$_} eq 'ARRAY' and ref $insert{$_}[0] eq 'SCALAR') { }
0 0 elsif (ref $insert{$_} eq 'REF' and ref ${$insert{$_};} eq 'ARRAY') { }
0 0 elsif (ref $insert{$_} eq 'SCALAR') { }
0 0 elsif (exists $json_fields{$_} and ref $insert{$_} eq 'ARRAY' || ref $insert{$_} eq 'HASH') { }
0 0 if (%insert) { }
3 0 if (defined $_[1] and ref $_[1] eq 'ARRAY') { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (defined ${$insert{$_};}->[0]) { }
0 0 if (ref $insert{$_} eq 'ARRAY' and ref $insert{$_}[0] eq 'SCALAR') { }
0 0 elsif (ref $insert{$_} eq 'REF' and ref ${$insert{$_};} eq 'ARRAY') { }
0 0 elsif (ref $insert{$_} eq 'SCALAR') { }
0 0 elsif (exists $json_fields{$_} and ref $insert{$_} eq 'ARRAY' || ref $insert{$_} eq 'HASH') { }
0 0 if (%insert) { }
3 0 if (defined $_[1] and ref $_[1] eq 'ARRAY') { }
1 0 if (defined $_[1] and CORE::ref $_[1] eq 'ARRAY')
0 0 if (defined $_[1] and CORE::ref $_[1] eq 'ARRAY')
0 1 if (@_ > 1)
3 1 if (@_ > 1)
0 0 if (not CORE::ref $cond[0]) { }
0 3 if (@cond)
0 0 if (not ref $cond[0]) { }
0 2 if (@cond)
0 0 if (not CORE::ref $cond[0]) { }
0 0 if (@cond)
0 0 if (not ref $cond[0]) { }
0 0 if (@cond)
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (ref $_[1] eq 'ARRAY') { }
0 0 elsif (ref $_[1] eq 'HASH') { }
0 0 elsif (not ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 elsif (CORE::ref $_[1] eq 'HASH') { }
0 0 elsif (not CORE::ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (ref $_[1] eq 'ARRAY') { }
0 0 elsif (ref $_[1] eq 'HASH') { }
0 0 elsif (not ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 elsif (CORE::ref $_[1] eq 'HASH') { }
0 0 elsif (not CORE::ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 elsif (CORE::ref $_[1] eq 'HASH') { }
0 0 elsif (not CORE::ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 elsif (CORE::ref $_[1] eq 'HASH') { }
0 0 elsif (not CORE::ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 0 if (exists $fields{$f}) { }
0 0 if (exists $fields{$_[$i]}) { }
0 0 if (CORE::ref $_[1] eq 'ARRAY') { }
0 0 elsif (CORE::ref $_[1] eq 'HASH') { }
0 0 elsif (not CORE::ref $_[1]) { }
0 0 if (defined $_[1])
0 0 if @unknown_columns
0 1 if @unknown_columns
0 0 if (defined ${$set_hash{$_};}->[0]) { }
0 1 if (CORE::ref $set_hash{$_} eq 'ARRAY' and CORE::ref $set_hash{$_}[0] eq 'SCALAR') { }
0 1 elsif (CORE::ref $set_hash{$_} eq 'REF' and CORE::ref ${$set_hash{$_};} eq 'ARRAY') { }
0 1 elsif (CORE::ref $set_hash{$_} eq 'SCALAR') { }
0 1 elsif (exists $json_fields{$_} and CORE::ref $set_hash{$_} eq 'ARRAY' || CORE::ref $set_hash{$_} eq 'HASH') { }
0 1 unless (CORE::ref $cond)
1 0 if (@_ > 2)
0 0 if (defined ${$column_value;}->[0]) { }
1 2 if (CORE::ref $column_value eq 'ARRAY' and CORE::ref $column_value->[0] eq 'SCALAR') { }
0 2 elsif (CORE::ref $column_value eq 'REF' and CORE::ref ${$column_value;} eq 'ARRAY') { }
0 2 elsif (CORE::ref $column_value and CORE::ref($column_value) =~ /^DBIx::Struct::JSON/u) { }
1 1 elsif (CORE::ref $column_value eq 'SCALAR') { }
1 13 if (@_ > 1 and CORE::ref $_[1] eq 'HASH') { }
3 20 elsif (CORE::ref $self and @$self > 1 and %{$self->[1];}) { }
0 0 if @unknown_columns
0 0 if (defined ${$set_hash{$_};}->[0]) { }
0 0 if (ref $set_hash{$_} eq 'ARRAY' and ref $set_hash{$_}[0] eq 'SCALAR') { }
0 0 elsif (ref $set_hash{$_} eq 'REF' and ref ${$set_hash{$_};} eq 'ARRAY') { }
0 0 elsif (ref $set_hash{$_} eq 'SCALAR') { }
0 0 elsif (exists $json_fields{$_} and ref $set_hash{$_} eq 'ARRAY' || ref $set_hash{$_} eq 'HASH') { }
0 0 unless (ref $cond)
0 0 if (@_ > 2)
0 0 if (defined ${$column_value;}->[0]) { }
0 0 if (ref $column_value eq 'ARRAY' and ref $column_value->[0] eq 'SCALAR') { }
0 0 elsif (ref $column_value eq 'REF' and ref ${$column_value;} eq 'ARRAY') { }
0 0 elsif (ref $column_value and ref($column_value) =~ /^DBIx::Struct::JSON/u) { }
0 0 elsif (ref $column_value eq 'SCALAR') { }
0 4 if (@_ > 1 and ref $_[1] eq 'HASH') { }
0 8 elsif (ref $self and @$self > 1 and %{$self->[1];}) { }
0 0 if @unknown_columns
0 0 if (defined ${$set_hash{$_};}->[0]) { }
0 0 if (ref $set_hash{$_} eq 'ARRAY' and ref $set_hash{$_}[0] eq 'SCALAR') { }
0 0 elsif (ref $set_hash{$_} eq 'REF' and ref ${$set_hash{$_};} eq 'ARRAY') { }
0 0 elsif (ref $set_hash{$_} eq 'SCALAR') { }
0 0 elsif (exists $json_fields{$_} and ref $set_hash{$_} eq 'ARRAY' || ref $set_hash{$_} eq 'HASH') { }
0 0 unless (ref $cond)
0 0 if (@_ > 2)
0 0 if (defined ${$column_value;}->[0]) { }
0 0 if (ref $column_value eq 'ARRAY' and ref $column_value->[0] eq 'SCALAR') { }
0 0 elsif (ref $column_value eq 'REF' and ref ${$column_value;} eq 'ARRAY') { }
0 0 elsif (ref $column_value and ref($column_value) =~ /^DBIx::Struct::JSON/u) { }
0 0 elsif (ref $column_value eq 'SCALAR') { }
0 3 if (@_ > 1 and ref $_[1] eq 'HASH') { }
0 6 elsif (ref $self and @$self > 1 and %{$self->[1];}) { }
1646 0 10 if $@
1650 0 10 if ($interface)
1667 0 4 if (exists $cache_complex_query{$key}) { }
1673 4 0 if (wantarray) { }
1690 0 4 unless ref $table
1693 4 0 ref $table eq 'ARRAY' ? :
1709 0 11 if ('ARRAY' eq ref $le)
1716 5 6 if (substr($le, 0, 1) ne '-') { }
1718 5 0 unless $ta
1721 0 5 unless setup_row($tn, $ncn)
1729 0 6 if ($cmd eq 'left') { }
0 6 elsif ($cmd eq 'right') { }
1 5 elsif ($cmd eq 'join') { }
0 5 elsif ($cmd eq 'on') { }
0 5 elsif ($cmd eq 'using') { }
0 5 elsif ($cmd eq 'as') { }
0 5 elsif ($cmd eq 'where') { }
0 5 elsif ($cmd eq 'group_by') { }
0 5 elsif ($cmd eq 'order_by') { }
0 5 elsif ($cmd eq 'having') { }
0 5 elsif ($cmd eq 'limit') { }
0 5 elsif ($cmd eq 'offset') { }
5 0 elsif ($cmd eq 'columns' or $cmd eq 'column' or $cmd eq 'distinct' or $cmd eq 'count' or $cmd eq 'all') { }
1759 0 5 if ($cmd eq 'all')
1762 1 4 if ($cmd eq 'distinct')
1765 2 3 if ($cmd eq 'count')
1768 4 1 if ($i + 1 < @linked_list and substr($linked_list[$i + 1], 0, 1) ne '-')
1770 2 2 if ($cols and not $cols =~ /^\d|^true$/u) { }
0 2 elsif ($cols =~ /^\d+$/u and $cols == 0 or $cols eq '') { }
1771 0 2 if ('ARRAY' eq ref $cols) { }
1777 0 0 if $cmd eq 'distinct'
1780 0 5 if ($cmd eq 'column') { }
1794 0 4 unless @from
1799 0 1 if $from[$idx][3] or not $from[$idx - 1][2]
1800 0 1 if substr($from[$idx][0], 0, 1) eq '('
1806 0 1 unless $from[$i][2]
1808 0 1 if substr($ptn, 0, 1) eq '('
1810 1 0 if ($cto->can("foreignKey$ucfptn")) { }
1816 0 0 if ($ptno->can("foreignKey$ucct"))
1826 2 2 unless @columns
1827 0 4 'SCALAR' eq ref $_ ? :
1830 4 1 unless ($joined)
1832 0 4 if $from[$idx][1] ne $from[$idx][0]
1834 1 4 if ($from[$idx][2]) { }
1838 0 1 if $nt->[1] ne $nt->[0]
1840 0 1 if ($using_on eq 'on' and ref $nt->[3][1]) { }
1850 0 4 if $idx != $#from
1855 2 2 if ($count) { }
1857 1 1 if ($distinct) { }
0 1 elsif ($all) { }
1858 1 0 if $what eq '*'
1861 0 0 if $what eq '*'
1867 0 2 if ($distinct)
1872 0 4 unless (defined $where)
1875 0 0 if ($sql_grp and defined $having)
1880 0 0 if ($conditions) { }
1887 0 0 if (defined $sql_grp)
1891 0 0 if defined $limit
1892 0 0 if $offset
1894 0 4 if $where
1895 4 0 if (wantarray) { }
1905 2 18 if (defined $groupby)
1908 2 0 /^[a-z][\w ]*$/iu ? :
0 2 /^\d+$/u ? :
0 2 ref $groupby ? :
1918 2 0 if (defined $having)
1929 10 8 unless defined $_[$i] and not ref $_[$i]
1930 2 6 if ($_[$i] eq '-group_by') { }
0 6 elsif ($_[$i] eq '-distinct') { }
2 4 elsif ($_[$i] eq '-having') { }
0 4 elsif ($_[$i] eq '-order_by') { }
0 4 elsif ($_[$i] eq '-where') { }
0 4 elsif ($_[$i] eq '-limit') { }
0 4 elsif ($_[$i] eq '-interface') { }
0 4 elsif ($_[$i] eq '-offset') { }
0 4 elsif ($_[$i] eq '-sql') { }
0 4 elsif ($_[$i] eq '-dry_run') { }
0 4 elsif (substr($_[$i], 0, 1) eq '-') { }
1971 2 18 if ($sql_grp and defined $having)
1988 15 5 if ($simple_table) { }
1992 4 11 if ($have_conditions and not ref $conditions) { }
1993 0 4 unless my $id = ($ncn->selectKeys)[0]
1999 4 0 if (defined $conditions) { }
2011 16 4 if ($need_where)
2014 2 18 if (defined $sql_grp)
2018 0 20 if ($order)
2023 0 20 if (defined $limit)
2027 0 20 if (defined $offset)
2029 0 0 if $offset
2034 15 5 if ($simple_table) { }
2037 1 4 if (not ref $table) { }
2044 0 20 if ($sql)
2045 0 0 if ('CODE' eq ref $sql) { }
0 0 elsif ('SCALAR' eq ref $sql) { }
2051 0 20 if $dry_run
2056 0 20 unless $sth = $_->prepare($query)
2062 0 20 unless $sth->execute(@query_bind, @where_bind)
2083 1 19 unless $data
2084 2 17 if ($one_column)
2104 0 0 if (ref $_[$i] eq 'CODE')
2114 0 0 if ($mapfunc) { }
2120 0 0 if ($one_column) { }
2144 0 0 if (ref $_[$i] eq 'CODE')
2149 0 0 unless $itemfunc
2164 0 0 if $connector_driver eq 'mysql'
2169 0 0 unless &$itemfunc()
2180 0 3 unless $simple_table