Sha256: 6841c35f4056b257a70e4961d30ed2522d382394c59e365cac3531d63105ba3b

Contents?: true

Size: 576 Bytes

Versions: 22

Compression:

Stored size: 576 Bytes

Contents

# frozen_string_literal: true

module Arel # :nodoc: all
  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

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
activerecord-6.0.6.1 lib/arel/visitors/where_sql.rb
activerecord-6.0.6 lib/arel/visitors/where_sql.rb
activerecord-6.0.5.1 lib/arel/visitors/where_sql.rb
activerecord-6.0.5 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.8 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.7 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.6 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.5 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.4 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.3 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.2 lib/arel/visitors/where_sql.rb
activerecord-6.0.4.1 lib/arel/visitors/where_sql.rb
activerecord-6.0.4 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.7 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.6 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.5 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.4 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.3 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.2 lib/arel/visitors/where_sql.rb
activerecord-6.0.3.1 lib/arel/visitors/where_sql.rb