Class: EasyCSV::Data

Inherits:
Struct
  • Object
show all
Defined in:
lib/easycsv/data.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeData

Returns a new instance of Data.



5
6
7
# File 'lib/easycsv/data.rb', line 5

def initialize
  super(Array.new, Array.new)
end

Instance Attribute Details

#columnsObject

Returns the value of attribute columns

Returns:

  • (Object)

    the current value of columns



4
5
6
# File 'lib/easycsv/data.rb', line 4

def columns
  @columns
end

#rowsObject

Returns the value of attribute rows

Returns:

  • (Object)

    the current value of rows



4
5
6
# File 'lib/easycsv/data.rb', line 4

def rows
  @rows
end

Instance Method Details

#add_column(header_name, method_call) ⇒ Object



17
18
19
# File 'lib/easycsv/data.rb', line 17

def add_column(header_name, method_call)
  columns.push(Column.new(header_name, method_call))
end

#add_columns(column_pairs) ⇒ Object



21
22
23
# File 'lib/easycsv/data.rb', line 21

def add_columns(column_pairs)
  column_pairs.each {|pair| add_column(*pair)}
end

#add_row(data_model) ⇒ Object



25
26
27
# File 'lib/easycsv/data.rb', line 25

def add_row(data_model)
  rows.push(Row.new(data_model))
end

#add_rows(data_models) ⇒ Object



29
30
31
# File 'lib/easycsv/data.rb', line 29

def add_rows(data_models)
  data_models.each{|d| add_row(d)}
end

#callsObject



13
14
15
# File 'lib/easycsv/data.rb', line 13

def calls
  columns.map(&:method_call)
end

#headersObject



9
10
11
# File 'lib/easycsv/data.rb', line 9

def headers
  columns.map(&:header_name)
end