Module: Modeling
- Included in:
- Class
- Defined in:
- lib/modeling/module.rb,
lib/modeling/version.rb,
lib/modeling/model_field.rb
Defined Under Namespace
Classes: Exception, ModelField
Constant Summary collapse
- VERSION =
"0.1.1"
Instance Attribute Summary collapse
-
#model_fields ⇒ Object
Returns the value of attribute model_fields.
Instance Method Summary collapse
Instance Attribute Details
#model_fields ⇒ Object
Returns the value of attribute model_fields.
5 6 7 |
# File 'lib/modeling/module.rb', line 5 def model_fields @model_fields end |
Instance Method Details
#model(*fields, &initializer) ⇒ Object
7 8 9 10 11 12 13 14 15 |
# File 'lib/modeling/module.rb', line 7 def model *fields, &initializer self.model_fields = model_fields = fields.map{ ModelField.parse _1 } define_initialize self, &initializer model_fields.each do |field| attr_writer field.name if field.writer? attr_reader field.name if field.reader? attr_tester "#{field.name}?".to_sym, field.instance_variable_name if field.tester? end end |