aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-12-14 10:38:55 -0800
committerAaron Patterson <aaron.patterson@gmail.com>2010-12-14 10:38:55 -0800
commit7c48c8360e1b4e90f2a0c5ef15590355c4bf0856 (patch)
treee54703a364b6c064d3dd9be874cb9afae956b325
parent3a9b9a2d4948c943ca0e6fd35393da5846d95b82 (diff)
downloadrails-7c48c8360e1b4e90f2a0c5ef15590355c4bf0856.tar.gz
rails-7c48c8360e1b4e90f2a0c5ef15590355c4bf0856.tar.bz2
rails-7c48c8360e1b4e90f2a0c5ef15590355c4bf0856.zip
select core should visit the source node
-rw-r--r--lib/arel/visitors/depth_first.rb3
-rw-r--r--test/visitors/test_depth_first.rb1
2 files changed, 3 insertions, 1 deletions
diff --git a/lib/arel/visitors/depth_first.rb b/lib/arel/visitors/depth_first.rb
index 9979c8313e..5ebd1296dd 100644
--- a/lib/arel/visitors/depth_first.rb
+++ b/lib/arel/visitors/depth_first.rb
@@ -57,6 +57,7 @@ module Arel
alias :visit_Arel_Nodes_GreaterThan :binary
alias :visit_Arel_Nodes_GreaterThanOrEqual :binary
alias :visit_Arel_Nodes_In :binary
+ alias :visit_Arel_Nodes_JoinSource :binary
alias :visit_Arel_Nodes_InnerJoin :binary
alias :visit_Arel_Nodes_LessThan :binary
alias :visit_Arel_Nodes_LessThanOrEqual :binary
@@ -116,7 +117,7 @@ module Arel
def visit_Arel_Nodes_SelectCore o
visit o.projections
- visit o.froms
+ visit o.source
visit o.wheres
visit o.groups
visit o.having
diff --git a/test/visitors/test_depth_first.rb b/test/visitors/test_depth_first.rb
index 23b011c2eb..34931c783e 100644
--- a/test/visitors/test_depth_first.rb
+++ b/test/visitors/test_depth_first.rb
@@ -97,6 +97,7 @@ module Arel
Arel::Nodes::As,
Arel::Nodes::DeleteStatement,
Arel::Nodes::Ordering,
+ Arel::Nodes::JoinSource,
].each do |klass|
define_method("test_#{klass.name.gsub('::', '_')}") do
binary = klass.new(:a, :b)