15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/zm/modules/zm_model.rb', line 15
def define_changed_attribute(attr_name)
attr_reader attr_name
generated_attribute_methods.module_eval " def \#{attr_name}_changed\n @\#{attr_name}_changed ||= false\n end\n\n def \#{attr_name}_changed?\n \#{attr_name}_changed\n end\n\n def \#{attr_name}=(value)\n return @\#{attr_name} if value == @\#{attr_name}\n @\#{attr_name}_changed = true\n @\#{attr_name} = value\n end\n RUBY\nend\n", __FILE__, __LINE__ + 1
|