Class: SimpleCsvCreator::Generator
- Inherits:
-
Object
- Object
- SimpleCsvCreator::Generator
- Defined in:
- lib/simple_csv_creator/generator.rb
Instance Attribute Summary collapse
-
#columns ⇒ Object
readonly
Returns the value of attribute columns.
Instance Method Summary collapse
- #column(column_name, &block) ⇒ Object
- #generate_using(generator) ⇒ Object
-
#initialize ⇒ Generator
constructor
A new instance of Generator.
- #simple_generate(resources) ⇒ Object
Constructor Details
#initialize ⇒ Generator
Returns a new instance of Generator.
5 6 7 |
# File 'lib/simple_csv_creator/generator.rb', line 5 def initialize @columns = [] end |
Instance Attribute Details
#columns ⇒ Object (readonly)
Returns the value of attribute columns.
3 4 5 |
# File 'lib/simple_csv_creator/generator.rb', line 3 def columns @columns end |
Instance Method Details
#column(column_name, &block) ⇒ Object
9 10 11 12 |
# File 'lib/simple_csv_creator/generator.rb', line 9 def column(column_name, &block) column = ::SimpleCsvCreator::Column.new(column_name, &block) @columns.push(column) end |
#generate_using(generator) ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/simple_csv_creator/generator.rb', line 22 def generate_using(generator) generate do |csv, columns| generator.call do |resource| csv << columns.map { |column| column.value(resource) } end end end |
#simple_generate(resources) ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/simple_csv_creator/generator.rb', line 14 def simple_generate(resources) generate do |csv, columns| resources.each do |resource| csv << columns.map { |column| column.value(resource) } end end end |