Improve add_constructor() support to handle ORDER BY and LIMIT with newlines in
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / CDBICompat / Constructor.pm
index 4077224..f44079b 100644 (file)
@@ -8,10 +8,15 @@ sub add_constructor {
   my ($class, $meth, $sql) = @_;
   $class = ref $class if ref $class;
   no strict 'refs';
+  
+  my %attrs;
+  $attrs{rows}     = $1 if $sql =~ s/LIMIT\s+(.*)\s+$//i;
+  $attrs{order_by} = $1 if $sql =~ s/ORDER BY\s+(.*)//i;
+  
   *{"${class}::${meth}"} =
     sub {
       my ($class, @args) = @_;
-      return $class->search_literal($sql, @args);
+      return $class->search_literal($sql, @args, \%attrs);
     };
 }