diff options
author | Matthew Draper <matthew@trebex.net> | 2014-09-26 08:21:01 +0930 |
---|---|---|
committer | Matthew Draper <matthew@trebex.net> | 2014-09-26 08:21:01 +0930 |
commit | cdae8216f582e035370b84edd236af7d22702e75 (patch) | |
tree | 6f607b2c312db046a488629f39bd8755b4cbc5c9 /lib/arel/visitors | |
parent | b57a11cb8abfca345f63084ce841c6f412c1156e (diff) | |
parent | fef9ce493ec3eab3cf120550abd0257f89eaddf7 (diff) | |
download | rails-cdae8216f582e035370b84edd236af7d22702e75.tar.gz rails-cdae8216f582e035370b84edd236af7d22702e75.tar.bz2 rails-cdae8216f582e035370b84edd236af7d22702e75.zip |
Merge pull request #318 from tamird/match-escape
{Matches,DoesNotMatch} support the ESCAPE clause
Diffstat (limited to 'lib/arel/visitors')
-rw-r--r-- | lib/arel/visitors/to_sql.rb | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index 7bef8feded..7fa3322148 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -539,13 +539,25 @@ module Arel def visit_Arel_Nodes_Matches o, collector collector = visit o.left, collector collector << " LIKE " - visit o.right, collector + collector = visit o.right, collector + if o.escape + collector << ' ESCAPE ' + visit o.escape, collector + else + collector + end end def visit_Arel_Nodes_DoesNotMatch o, collector collector = visit o.left, collector collector << " NOT LIKE " - visit o.right, collector + collector = visit o.right, collector + if o.escape + collector << ' ESCAPE ' + visit o.escape, collector + else + collector + end end def visit_Arel_Nodes_JoinSource o, collector |