diff options
Diffstat (limited to 'lib/arel/tree_manager.rb')
-rw-r--r-- | lib/arel/tree_manager.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/arel/tree_manager.rb b/lib/arel/tree_manager.rb index 6176f8a250..2fa770a0e3 100644 --- a/lib/arel/tree_manager.rb +++ b/lib/arel/tree_manager.rb @@ -9,6 +9,7 @@ module Arel def initialize engine @engine = engine @visitor = Visitors.visitor_for @engine + @ctx = nil end def to_dot @@ -23,5 +24,13 @@ module Arel super @ast = @ast.clone end + + def where expr + if Arel::TreeManager === expr + expr = expr.ast + end + @ctx.wheres << expr + self + end end end |