# File lib/hammer_cli/output/adapter/csv.rb, line 154
    def print_collection(fields, collection)
      rows = row_data(fields, collection)
      # get headers using columns heuristic
      headers = rows.map{ |r| Cell.headers(r, @context) }.max_by{ |headers| headers.size }
      # or use headers from output definition
      headers ||= default_headers(fields)
      csv_string = generate do |csv|
        csv << headers if headers
        rows.each do |row|
          csv << Cell.values(headers, row)
        end
      end
      puts csv_string
    end