Sha256: fe32b8593ef1ca469827f21a4393231a4acd482e1f5f7c4ab4d2df737966360d

Contents?: true

Size: 684 Bytes

Versions: 88

Compression:

Stored size: 684 Bytes

Contents

module Spreadsheet
  ##
  # Parent Class for all Writers. Implements the copying of unmodified
  # Spreadsheet documents.
  class Writer
    def initialize io_or_path
      @io_or_path = io_or_path
    end
    def write workbook
      if @io_or_path.respond_to? :seek
        @io_or_path.binmode
        write_workbook workbook, @io_or_path
      else
        File.open(@io_or_path, "wb+") do |fh|
          write_workbook workbook, fh
        end
      end
    end
    private
    def write_workbook workbook, io
      reader = workbook.io
      unless io == reader
        reader.rewind
        data = reader.read
        io.rewind
        io.write data
      end
    end
  end
end

Version data entries

88 entries across 88 versions & 7 rubygems

Version Path
spreadsheet-1.3.3 lib/spreadsheet/writer.rb
spreadsheet-1.3.2 lib/spreadsheet/writer.rb
spreadsheet-1.3.1 lib/spreadsheet/writer.rb
spreadsheet-1.3.0 lib/spreadsheet/writer.rb
spreadsheet-1.2.9 lib/spreadsheet/writer.rb
spreadsheet-1.2.8 lib/spreadsheet/writer.rb
spreadsheet-1.2.7 lib/spreadsheet/writer.rb
spreadsheet-1.2.6 lib/spreadsheet/writer.rb
spreadsheet-1.2.5 lib/spreadsheet/writer.rb
spreadsheet-1.2.4 lib/spreadsheet/writer.rb
spreadsheet-1.2.3 lib/spreadsheet/writer.rb
spreadsheet-1.2.2 lib/spreadsheet/writer.rb
spreadsheet-1.2.1 lib/spreadsheet/writer.rb
spreadsheet-1.2.0 lib/spreadsheet/writer.rb
spreadsheet-1.1.9 lib/spreadsheet/writer.rb
spreadsheet-1.1.8 lib/spreadsheet/writer.rb
spreadsheet-1.1.7 lib/spreadsheet/writer.rb
spreadsheet-1.1.6 lib/spreadsheet/writer.rb
spreadsheet-1.1.5 lib/spreadsheet/writer.rb
spreadsheet-1.1.4 lib/spreadsheet/writer.rb