def set(*args)
      # TODO: add deprecation unless args.size == 1 && args[0].is_a? Hash
      # when deprecation is removed:
      # * change list#sorting= to sorting.set(val)
      clear
      if args.first.is_a?(Enumerable)
        args.each do |h|
          h.is_a?(Hash) ? h.each { |c, d| add(c, d) } : add(*h)
        end
      else
        add(*args)
      end
    end
def set(*args)
      # TODO: add deprecation unless args.size == 1 && args[0].is_a? Hash
      # when deprecation is removed:
      # * change list#sorting= to sorting.set(val)
      clear
      if args.first.is_a?(Enumerable)
        args.each do |h|
          h.is_a?(Hash) ? h.each { |c, d| add(c, d) } : add(*h)
        end
      else
        add(*args)
      end
    end
clears the sorting before setting to the given column/direction
 set(column, direction)
 set({column => direction, column => direction})
 set({column => direction}, {column => direction})
 set([column, direction], [column, direction])