Method: DataTable::Table#calculate

Defined in:
lib/data-table/table.rb

#calculate(data, column_name, function, path = nil) ⇒ Object

TODO: Write test for this



381
382
383
384
385
386
387
388
389
390
391
392
# File 'lib/data-table/table.rb', line 381

def calculate(data, column_name, function, path = nil)
  column = @columns.select { |col| col.name == column_name }
  if function.is_a?(Proc)
    calculate_with_proc(function, data, column, path)
  elsif function.is_a?(Array) && function[1].is_a?(Proc)
    calculate_array_and_proc(function, data, column_name, path)
  elsif function.is_a?(Array)
    calculate_many(function, data, column_name, path)
  else
    send("calculate_#{function}", data, column_name)
  end
end