method

build_case_for_value_position

build_case_for_value_position(column, values, filter: true)
private

No documentation available.

# File activerecord/lib/active_record/relation/query_methods.rb, line 2163
      def build_case_for_value_position(column, values, filter: true)
        node = Arel::Nodes::Case.new
        values.each.with_index(1) do |value, order|
          node.when(column.eq(value)).then(order)
        end

        node = node.else(values.length + 1) unless filter
        Arel::Nodes::Ascending.new(node)
      end