X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FDBI%2FSybase%2FASE%2FNoBindVars.pm;h=b5ade315f250396689c3e51cf6e800f09500e9d5;hb=4a233f3019d2baa4bf2abee0c873c74d5cdf3a11;hp=dc8bf344ee5fb37526a0e8c4b177bc60acce2117;hpb=95787afeb4ecec13279ab2fb26a407c0f971b7df;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Storage/DBI/Sybase/ASE/NoBindVars.pm b/lib/DBIx/Class/Storage/DBI/Sybase/ASE/NoBindVars.pm index dc8bf34..b5ade31 100644 --- a/lib/DBIx/Class/Storage/DBI/Sybase/ASE/NoBindVars.pm +++ b/lib/DBIx/Class/Storage/DBI/Sybase/ASE/NoBindVars.pm @@ -1,12 +1,16 @@ package DBIx::Class::Storage::DBI::Sybase::ASE::NoBindVars; +use warnings; +use strict; + use base qw/ DBIx::Class::Storage::DBI::NoBindVars DBIx::Class::Storage::DBI::Sybase::ASE /; use mro 'c3'; -use List::Util (); -use Scalar::Util (); +use List::Util 'first'; +use Scalar::Util 'looks_like_number'; +use namespace::clean; sub _init { my $self = shift; @@ -17,7 +21,7 @@ sub _init { sub _fetch_identity_sql { 'SELECT ' . $_[0]->_identity_method } -my $number = sub { Scalar::Util::looks_like_number($_[0]) }; +my $number = sub { looks_like_number $_[0] }; my $decimal = sub { $_[0] =~ /^ [-+]? \d+ (?:\.\d*)? \z/x }; @@ -38,7 +42,7 @@ sub interpolate_unquoted { return $self->next::method(@_) if not defined $value or not defined $type; - if (my $key = List::Util::first { $type =~ /$_/i } keys %noquote) { + if (my $key = first { $type =~ /$_/i } keys %noquote) { return 1 if $noquote{$key}->($value); } elsif ($self->is_datatype_numeric($type) && $number->($value)) { @@ -68,8 +72,8 @@ Sybase ASE without placeholder support =head1 DESCRIPTION -If you're using this driver than your version of Sybase, or the libraries you -use to connect to it, do not support placeholders. +If you're using this driver then your version of Sybase or the libraries you +use to connect to it do not support placeholders. You can also enable this driver explicitly using: @@ -81,7 +85,7 @@ See the discussion in L<< DBD::Sybase/Using ? Placeholders & bind parameters to $sth->execute >> for details on the pros and cons of using placeholders. One advantage of not using placeholders is that C in a transaction as the base Sybase driver does. When using this driver, bind variables will be interpolated (properly quoted of