From 21e052796d3007488d5dd9f00299a3a22fdb6249 Mon Sep 17 00:00:00 2001 From: Ernie Miller Date: Wed, 9 Mar 2011 02:27:43 +0800 Subject: Replace MathOperation with InfixOperation to support more operators --- lib/arel/visitors/to_sql.rb | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) (limited to 'lib/arel/visitors') diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index f30557e509..1550757cf4 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -373,21 +373,14 @@ key on UpdateManager using UpdateManager#key= alias :visit_Time :quoted alias :visit_TrueClass :quoted - def visit_Arel_Nodes_Multiplication o - "#{visit o.left} * #{visit o.right}" + def visit_Arel_Nodes_InfixOperation o + "#{visit o.left} #{o.operator} #{visit o.right}" end - def visit_Arel_Nodes_Division o - "#{visit o.left} / #{visit o.right}" - end - - def visit_Arel_Nodes_Addition o - "(#{visit o.left} + #{visit o.right})" - end - - def visit_Arel_Nodes_Subtraction o - "(#{visit o.left} - #{visit o.right})" - end + alias :visit_Arel_Nodes_Addition :visit_Arel_Nodes_InfixOperation + alias :visit_Arel_Nodes_Subtraction :visit_Arel_Nodes_InfixOperation + alias :visit_Arel_Nodes_Multiplication :visit_Arel_Nodes_InfixOperation + alias :visit_Arel_Nodes_Division :visit_Arel_Nodes_InfixOperation def visit_Array o o.empty? ? 'NULL' : o.map { |x| visit x }.join(', ') -- cgit v1.2.3