Class: Etna::CsvExporter::RowWriteable

Inherits:
Object
  • Object
show all
Defined in:
lib/etna/csvs.rb

Instance Method Summary collapse

Constructor Details

#initialize(exporter, csv) ⇒ RowWriteable

Returns a new instance of RowWriteable.



139
140
141
142
143
# File 'lib/etna/csvs.rb', line 139

def initialize(exporter, csv)
  @exporter = exporter
  @csv = csv
  @written_headers = false
end

Instance Method Details

#<<(columns) ⇒ Object



145
146
147
148
# File 'lib/etna/csvs.rb', line 145

def <<(columns)
  self.ensure_headers
  @csv << @exporter.row_from_columns(columns)
end

#ensure_headersObject



154
155
156
157
# File 'lib/etna/csvs.rb', line 154

def ensure_headers
  @csv << @exporter.header_row unless @written_headers
  @written_headers = true
end

#write(**columns) ⇒ Object



150
151
152
# File 'lib/etna/csvs.rb', line 150

def write(**columns)
  self.<<(columns)
end