File: C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/arel-9.0.0/lib/arel/visitors/where_sql.rb
# frozen_string_literal: true
module Arel
module Visitors
class WhereSql < Arel::Visitors::ToSql
def initialize(inner_visitor, *args, &block)
@inner_visitor = inner_visitor
super(*args, &block)
end
private
def visit_Arel_Nodes_SelectCore o, collector
collector << "WHERE "
wheres = o.wheres.map do |where|
Nodes::SqlLiteral.new(@inner_visitor.accept(where, collector.class.new).value)
end
inject_join wheres, collector, ' AND '
end
end
end
end