fork download
  1. def cleanup_array(input_array, options = {})
  2. arr_data = input_array.compact.uniq
  3.  
  4. all_integers = arr_data.all? {|el| el.is_a?(Integer) rescue false }
  5. sort_key = options[:sort_key]
  6.  
  7. arr_data.sort_by! do |val|
  8. if sort_key
  9. sort_key.call(val)
  10. elsif all_integers
  11. val.to_i
  12. elsif e.to_a?(Array)
  13. e.map(&:to_s).join('_')
  14. else
  15. val.to_s
  16. end
  17. end
  18. arr_data.reverse! if options[:order] == :desc
  19. arr_data
  20.  
  21. end
  22.  
Success #stdin #stdout 0.01s 8108KB
stdin
Standard input is empty
stdout
Standard output is empty