use DBIx::Class::ResultClass::HashRefInflator;
use Scalar::Util qw/blessed weaken reftype/;
use DBIx::Class::_Util qw(
+ dbic_internal_try dump_value
fail_on_internal_wantarray fail_on_internal_call UNRESOLVABLE_CONDITION
);
use Try::Tiny;
$call_cond = shift;
}
# fish out attrs in the ($condref, $attr) case
- elsif (@_ == 2 and ( ! defined $_[0] or (ref $_[0]) ne '') ) {
+ elsif (@_ == 2 and ( ! defined $_[0] or length ref $_[0] ) ) {
($call_cond, $call_attrs) = @_;
}
elsif (@_ % 2) {
for my $i (0 .. $#_) {
next if $i % 2;
$self->throw_exception ('All keys in condition key/value pairs must be plain scalars')
- if (! defined $_[$i] or ref $_[$i] ne '');
+ if (! defined $_[$i] or length ref $_[$i] );
}
$call_cond = { @_ };
return $rs;
}
-my $dark_sel_dumper;
sub _normalize_selection {
my ($self, $attrs) = @_;
else {
$attrs->{_dark_selector} = {
plus_stage => $pref,
- string => ($dark_sel_dumper ||= do {
- require Data::Dumper::Concise;
- Data::Dumper::Concise::DumperObject()->Indent(0);
- })->Values([$_])->Dump
- ,
+ string => do {
+ local $Data::Dumper::Indent = 0;
+ dump_value $_;
+ },
};
last SELECTOR;
}
join "\x00", sort $rsrc->unique_constraint_columns($c_name)
}++;
- try {
+ dbic_internal_try {
push @unique_queries, $self->_qualify_cond_columns(
$self->result_source->_minimal_valueset_satisfying_constraint(
constraint_name => $c_name,
... do stuff ...
}
- $rs->first; # without cache, this would issue a query
+ $resultset->first; # without cache, this would issue a query
By default, searches are not cached.