=head2 Relationship to L<Data::Query (DQ)|Data::Query>
When initial work on DQ was taking place, the tools in L<::Storage::DBIHacks
-|http://github.com/dbsrgits/dbix-class/blob/current/blead/lib/DBIx/Class/Storage/DBIHacks.pm>
+|http://github.com/dbsrgits/dbix-class/blob/master/lib/DBIx/Class/Storage/DBIHacks.pm>
were only beginning to take shape, and it wasn't clear how important they will
become further down the road. In fact the I<regexing all over the place> was
considered an ugly stop-gap, and even a couple of highly entertaining talks
/;
use mro 'c3';
-use Sub::Name 'subname';
use DBIx::Class::Carp;
+use DBIx::Class::_Util 'set_subname';
use namespace::clean;
__PACKAGE__->mk_group_accessors (simple => qw/quote_char name_sep limit_dialect/);
# that use DBIx::Class::Carp/DBIx::Class::Exception instead of plain Carp
no warnings qw/redefine/;
- *SQL::Abstract::belch = subname 'SQL::Abstract::belch' => sub (@) {
+ *SQL::Abstract::belch = set_subname 'SQL::Abstract::belch' => sub (@) {
my($func) = (caller(1))[3];
carp "[$func] Warning: ", @_;
};
- *SQL::Abstract::puke = subname 'SQL::Abstract::puke' => sub (@) {
+ *SQL::Abstract::puke = set_subname 'SQL::Abstract::puke' => sub (@) {
my($func) = (caller(1))[3];
__PACKAGE__->throw_exception("[$func] Fatal: " . join ('', @_));
};
# poor man's de-qualifier
sub _quote {
- $_[0]->next::method( ( $_[0]{_dequalify_idents} and ! ref $_[1] )
+ $_[0]->next::method( ( $_[0]{_dequalify_idents} and defined $_[1] and ! ref $_[1] )
? $_[1] =~ / ([^\.]+) $ /x
: $_[1]
);