Module: CouchModel::Base::Accessor::ClassMethods
- Defined in:
- lib/couch_model/base/accessor.rb
Instance Method Summary collapse
- #key_accessor(*arguments) ⇒ Object
- #key_reader(key, options = { }) ⇒ Object
- #key_writer(key, options = { }) ⇒ Object
Instance Method Details
#key_accessor(*arguments) ⇒ Object
33 34 35 36 |
# File 'lib/couch_model/base/accessor.rb', line 33 def key_accessor(*arguments) key_reader *arguments key_writer *arguments end |
#key_reader(key, options = { }) ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/couch_model/base/accessor.rb', line 17 def key_reader(key, = { }) raise ArgumentError, "method #{key} is already defined" if method_defined?(:"#{key}") set_default key, [:default] if .has_key?(:default) define_method :"#{key}" do @attributes[key.to_s] end end |
#key_writer(key, options = { }) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/couch_model/base/accessor.rb', line 25 def key_writer(key, = { }) raise ArgumentError, "method #{key}= is already defined" if method_defined?(:"#{key}=") set_default key, [:default] if .has_key?(:default) define_method :"#{key}=" do |value| @attributes[key.to_s] = value end end |