Public Instance methods
after_save
()
Clear the cache of original deserialized values after saving so that it doesn’t show the column is modified after saving.
[show source]
# File lib/sequel/plugins/serialization_modification_detection.rb, line 35 def after_save super @original_deserialized_values = @deserialized_values end
changed_columns
()
Detect which serialized columns have changed.
[show source]
# File lib/sequel/plugins/serialization_modification_detection.rb, line 41 def changed_columns cc = super cc = cc.dup if frozen? deserialized_values.each{|c, v| cc << c if !cc.include?(c) && original_deserialized_value(c) != v} cc end
dup
()
Duplicate the original deserialized values when duplicating instance.
[show source]
# File lib/sequel/plugins/serialization_modification_detection.rb, line 49 def dup o = @original_deserialized_values super.instance_eval do @original_deserialized_values = o.dup if o self end end
freeze
()
Freeze the original deserialized values when freezing the instance.
[show source]
# File lib/sequel/plugins/serialization_modification_detection.rb, line 58 def freeze @original_deserialized_values ||= {} @original_deserialized_values.freeze super end