Class: MakeData::ResultsFormatter
- Inherits:
-
Object
- Object
- MakeData::ResultsFormatter
- Defined in:
- lib/make_data.rb
Class Method Summary collapse
Instance Method Summary collapse
- #csv ⇒ Object
- #format_results ⇒ Object
-
#initialize(results, format) ⇒ ResultsFormatter
constructor
A new instance of ResultsFormatter.
- #json ⇒ Object
- #yaml ⇒ Object
Constructor Details
#initialize(results, format) ⇒ ResultsFormatter
Returns a new instance of ResultsFormatter.
60 61 62 63 |
# File 'lib/make_data.rb', line 60 def initialize(results, format) @results = results @format = format end |
Class Method Details
.valid_formats ⇒ Object
69 70 71 |
# File 'lib/make_data.rb', line 69 def self.valid_formats %w(json csv yaml) end |
Instance Method Details
#csv ⇒ Object
77 78 79 80 81 82 |
# File 'lib/make_data.rb', line 77 def csv CSV.generate do |csv| csv << @results[0].keys # column headers @results.map(&:values).each { |row| csv << row } end end |
#format_results ⇒ Object
65 66 67 |
# File 'lib/make_data.rb', line 65 def format_results send(@format.to_sym) end |
#json ⇒ Object
73 74 75 |
# File 'lib/make_data.rb', line 73 def json JSON.generate(@results) end |
#yaml ⇒ Object
84 85 86 |
# File 'lib/make_data.rb', line 84 def yaml @results.to_yaml end |