use Carp;
use strict;
use warnings;
-use List::Util qw/first/;
-use Scalar::Util qw/blessed/;
+use List::Util ();
+use Scalar::Util ();
#======================================================================
# GLOBALS
$self->_debug("Unary OP(-$op) within hashref, recursing...");
- my $op_entry = first {$op =~ $_->{regex}} @{$self->{unary_ops}};
+ my $op_entry = List::Util::first {$op =~ $_->{regex}} @{$self->{unary_ops}};
if (my $handler = $op_entry->{handler}) {
if (not ref $handler) {
if ($op =~ s/\s?\d+$//) {
($sql, @bind) = $self->_where_hashpair_HASHREF($k, $val, $1);
}
# CASE: special operators like -in or -between
- elsif ( my $special_op = first {$op =~ $_->{regex}} @{$self->{special_ops}} ) {
+ elsif ( my $special_op = List::Util::first {$op =~ $_->{regex}} @{$self->{special_ops}} ) {
my $handler = $special_op->{handler};
if (! $handler) {
puke "No handler supplied for special operator $orig_op";
while (1) {
# blessed objects are treated like scalars
- $ref = (blessed $data) ? '' : ref $data;
+ $ref = (Scalar::Util::blessed $data) ? '' : ref $data;
$n_steps += 1 if $ref;
last if $ref ne 'REF';
$data = $$data;
sub _METHOD_FOR_refkind {
my ($self, $meth_prefix, $data) = @_;
- my $method = first {$_} map {$self->can($meth_prefix."_".$_)}
+ my $method = List::Util::first {$_} map {$self->can($meth_prefix."_".$_)}
$self->_try_refkind($data)
or puke "cannot dispatch on '$meth_prefix' for ".$self->_refkind($data);
return $method;
sub _SWITCH_refkind {
my ($self, $data, $dispatch_table) = @_;
- my $coderef = first {$_} map {$dispatch_table->{$_}}
+ my $coderef = List::Util::first {$_} map {$dispatch_table->{$_}}
$self->_try_refkind($data)
or puke "no dispatch entry for ".$self->_refkind($data);
$coderef->();