Sha256: 520a786e14f1c76f1f4439eda98d9846ced3df3876ae0d62209f6a117631d3d7

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

require 'rxl/version'
require 'rubyXL'
require_relative 'workbook'

module Rxl

  def self.write_file(filepath, hash_workbook)
    rubyxl_workbook = Workbook.hash_workbook_to_rubyxl_workbook(hash_workbook)
    rubyxl_workbook.write(filepath)
    nil
  end

  def self.write_file_as_tables(filepath, hash_tables, write_headers: true)
    hash_workbook = Workbook.hashes_to_hash_workbook(hash_tables, write_headers: write_headers)
    write_file(filepath, hash_workbook)
    nil
  end

  def self.read_file(filepath)
    rubyxl_workbook = RubyXL::Parser.parse(filepath)
    Workbook.rubyxl_to_hash(rubyxl_workbook)
  end

  def self.read_file_as_tables(filepath)
    hash_workbook = read_file(filepath)
    Workbook.hash_workbook_to_hash_tables(hash_workbook)
  end

  def self.read_files(filepaths_hash, read_style = nil)
    return_hash = {}
    filepaths_hash.each do |key, value|
      if read_style == :as_tables
        return_hash[key] = read_file_as_tables(value)
      else
        return_hash[key] = read_file(value)
      end
    end
    return_hash
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rxl-0.6.1 lib/rxl.rb
rxl-0.6.0 lib/rxl.rb