use simple return system for delete.using
[scpubgit/Q-Branch.git] / lib / SQL / Abstract / ExtraClauses.pm
index 7bafdba..22817ce 100644 (file)
@@ -62,9 +62,7 @@ sub apply_to {
 
   $sqla->clause_expanders(
     'update.from' => $self->cb('_expand_select_clause_from'),
-    'delete.using' => $self->cb(sub {
-      +(using => $_[0]->_expand_from_list(undef, $_[2]));
-    }),
+    'delete.using' => $self->cb('_expand_from_list'),
     'insert.rowvalues' => $self->cb(sub {
       +(from => $_[0]->expand_expr({ -values => $_[2] }));
     }),
@@ -122,8 +120,8 @@ sub apply_to {
 }
 
 sub _expand_select {
-  my ($self, $orig, $before_setop) = (shift, shift, shift);
-  my $exp = $self->sqla->$orig(@_);
+  my ($self, $orig, $before_setop, @args) = @_;
+  my $exp = $self->sqla->$orig(@args);
   return $exp unless my $setop = (my $sel = $exp->{-select})->{setop};
   if (my @keys = grep $sel->{$_}, @$before_setop) {
     my %inner; @inner{@keys} = delete @{$sel}{@keys};