Class: FightCSV::Schema

Inherits:
Object
  • Object
show all
Defined in:
lib/fight_csv/schema.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(filename = nil, &block) ⇒ Schema

Returns a new instance of Schema.



4
5
6
7
8
9
10
11
# File 'lib/fight_csv/schema.rb', line 4

def initialize(filename = nil, &block)
  self.fields = Array.new
  if String === filename
    self.instance_eval { eval(File.read(filename)) }
  elsif block
    self.instance_eval &block
  end
end

Instance Attribute Details

#fieldsObject

Returns the value of attribute fields.



3
4
5
# File 'lib/fight_csv/schema.rb', line 3

def fields
  @fields
end

Instance Method Details

#field(fieldname, constructor_hash = {}) ⇒ Object



13
14
15
# File 'lib/fight_csv/schema.rb', line 13

def field(fieldname, constructor_hash = {})
  self.fields << Field.new(fieldname, constructor_hash)
end