expander handles literal as RHS
Matt S Trout [Mon, 3 Sep 2018 22:43:09 +0000 (22:43 +0000)]
lib/SQL/Abstract.pm

index e3a537e..a479468 100644 (file)
@@ -560,6 +560,14 @@ sub _expand_expr_hashpair {
   if ($k eq '-nest') {
     return $self->_expand_expr($v);
   }
+  if ($k !~ /^-/ and my $literal = is_literal_value($v)) {
+    unless (length $k) {
+      belch 'Hash-pairs consisting of an empty string with a literal are deprecated, and will be removed in 2.0: use -and => [ $literal ] instead';
+      return \$literal;
+    }
+    my ($sql, @bind) = @$literal;
+    return \[ $self->_quote($k).' '.$sql, @bind ];
+  }
   return { $k => $v };
 }