Class: Slurpee::CSV
- Inherits:
-
Object
- Object
- Slurpee::CSV
- Defined in:
- lib/slurpee/csv.rb
Instance Attribute Summary collapse
-
#data ⇒ Object
Returns the value of attribute data.
-
#key_order ⇒ Object
Returns the value of attribute key_order.
-
#row_count ⇒ Object
Returns the value of attribute row_count.
Instance Method Summary collapse
-
#column(index) ⇒ Object
O(1) read.
-
#initialize(keys) ⇒ CSV
constructor
create.
-
#new_row!(params) ⇒ Object
O(k) update.
-
#row(index) ⇒ Object
O© ugh fix read.
-
#rows ⇒ Object
O(cr) ugh super fix plz show.
Constructor Details
#initialize(keys) ⇒ CSV
create
6 7 8 9 10 11 12 13 14 15 |
# File 'lib/slurpee/csv.rb', line 6 def initialize(keys) @data = {} @key_order = {} @row_count = 0 keys.each_with_index do |key, i| @key_order[i] = key @data[key] = [] end end |
Instance Attribute Details
#data ⇒ Object
Returns the value of attribute data.
3 4 5 |
# File 'lib/slurpee/csv.rb', line 3 def data @data end |
#key_order ⇒ Object
Returns the value of attribute key_order.
3 4 5 |
# File 'lib/slurpee/csv.rb', line 3 def key_order @key_order end |
#row_count ⇒ Object
Returns the value of attribute row_count.
3 4 5 |
# File 'lib/slurpee/csv.rb', line 3 def row_count @row_count end |
Instance Method Details
#column(index) ⇒ Object
O(1) read
31 32 33 |
# File 'lib/slurpee/csv.rb', line 31 def column(index) @data[index] end |
#new_row!(params) ⇒ Object
O(k) update
37 38 39 40 41 42 43 |
# File 'lib/slurpee/csv.rb', line 37 def new_row!(params) @key_order.each do |k, v| @data[v] << (params[v].nil?? "" : params[v]) end @row_count+=1 end |
#row(index) ⇒ Object
O© ugh fix read
19 20 21 22 23 24 25 26 27 |
# File 'lib/slurpee/csv.rb', line 19 def row(index) row_str = "" @data.each do |j, w| row_str << "#{w[index]}, " end row_str end |
#rows ⇒ Object
O(cr) ugh super fix plz show
47 48 49 50 51 52 53 54 55 |
# File 'lib/slurpee/csv.rb', line 47 def rows rows = [] (0..@row_count).each do |i| rows << row(i) end rows end |