Module: MemoryModel::Base::Fields::ClassMethods

Defined in:
lib/memory_model/base/fields.rb

Instance Method Summary collapse

Instance Method Details

#field(attr, options = {}) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/memory_model/base/fields.rb', line 22

def field(attr, options={})
  define_attribute_method attr unless instance_method_already_implemented? attr
  fields.add(attr.to_sym, options)
  class_eval "    def \#{attr}\n      read_attribute :\#{attr}\n    end\n\n    def \#{attr}=(value)\n      write_attribute :\#{attr}, value\n    end\n  RUBY\nend\n", __FILE__, __LINE__ + 1

#fieldsObject



36
37
38
39
# File 'lib/memory_model/base/fields.rb', line 36

def fields
  return nil if self == MemoryModel::Base
  @fields ||= FieldSet.new
end