module CSVBox

Constants

VERSION

Public Class Methods

add(box, &block) click to toggle source
# File lib/csv_box.rb, line 5
def self.add(box, &block)
  @boxmap ||= {}
  @boxmap.store(box, block)
end
box_names() click to toggle source
# File lib/csv_box.rb, line 10
def self.box_names
  @boxmap.keys
end
layouts(name, &block) click to toggle source
# File lib/csv_box.rb, line 19
def self.layouts(name, &block)
  @layoutmap ||= {}

  layout = Layout.new
  layout.instance_eval(&block)

  @layoutmap.store(name, layout)
end
take(box, layout) click to toggle source
# File lib/csv_box.rb, line 14
def self.take(box, layout)
  box_layout = @layoutmap.fetch(box)
  Box.new(@boxmap.fetch(box), box_layout.fetch(layout))
end