aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel
diff options
context:
space:
mode:
authorJiri Pospisil <mekishizufu@gmail.com>2014-06-14 23:33:05 +0200
committerJiri Pospisil <mekishizufu@gmail.com>2014-06-14 23:33:05 +0200
commitfcd11dcb99d69d40ff60b56bcd7330264128ecfd (patch)
tree8a0372ee1867145ee1d9b02586c3bcbda9e399a4 /lib/arel
parent0a7e0ef210e30e5f7a69ffe469faf62bdf57bd5c (diff)
downloadrails-fcd11dcb99d69d40ff60b56bcd7330264128ecfd.tar.gz
rails-fcd11dcb99d69d40ff60b56bcd7330264128ecfd.tar.bz2
rails-fcd11dcb99d69d40ff60b56bcd7330264128ecfd.zip
Modify Visitors::Dot's API to use collectors
Diffstat (limited to 'lib/arel')
-rw-r--r--lib/arel/tree_manager.rb4
-rw-r--r--lib/arel/visitors/dot.rb4
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/arel/tree_manager.rb b/lib/arel/tree_manager.rb
index 87887800d0..8bff97af78 100644
--- a/lib/arel/tree_manager.rb
+++ b/lib/arel/tree_manager.rb
@@ -15,7 +15,9 @@ module Arel
end
def to_dot
- Visitors::Dot.new.accept @ast
+ collector = Arel::Collectors::PlainString.new
+ collector = Visitors::Dot.new.accept @ast, collector
+ collector.value
end
def visitor
diff --git a/lib/arel/visitors/dot.rb b/lib/arel/visitors/dot.rb
index ba35223ac9..d96cf7a6a0 100644
--- a/lib/arel/visitors/dot.rb
+++ b/lib/arel/visitors/dot.rb
@@ -22,9 +22,9 @@ module Arel
@seen = {}
end
- def accept object
+ def accept object, collector
visit object
- to_dot
+ collector << to_dot
end
private