Method: Spreadsheet::Excel::Writer::Workbook#write_workbook

Defined in:
lib/spreadsheet/excel/writer/workbook.rb

#write_workbook(workbook, io) ⇒ Object

The main writer method. Calls #write_from_scratch or #write_changes depending on the class and state of workbook.



617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
# File 'lib/spreadsheet/excel/writer/workbook.rb', line 617

def write_workbook workbook, io
  unless workbook.is_a?(Excel::Workbook) && workbook.io
    @date_base = Date.new 1899, 12, 31
    write_from_scratch workbook, io
  else
    @date_base = workbook.date_base
    if workbook.changes.empty?
      super
    else
      write_changes workbook, io
    end
  end
ensure
  cleanup workbook
end