113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
# File 'lib/fast_excel.rb', line 113
def write_row(row_number, values, formats = nil)
values.each_with_index do |value, index|
format = if formats
formats.is_a?(Array) ? formats[index] : formats
end
if value.is_a?(Integer) || value.is_a?(Numeric) || value.is_a?(Float)
write_number(row_number, index, value, format)
elsif defined?(BigDecimal) && value.is_a?(BigDecimal)
write_number(row_number, index, value.to_f, format)
elsif defined?(DateTime) && value.is_a?(DateTime)
write_datetime(row_number, index, FastExcel.lxw_datetime(value), format)
elsif value.is_a?(Time)
write_datetime(row_number, index, FastExcel.lxw_time(value), format)
else
write_string(row_number, index, value.to_s, format)
end
end
end
|