module Mobility::Plugins::ActiveModel::Dirty::InstanceMethods

Public Instance Methods

changed() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 191
def changed
  # uniq is required for Rails < 6.0
  (super + mutations_from_mobility.changed).uniq
end
changed?() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 196
def changed?
  super || mutations_from_mobility.changed?
end
changed_attributes() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 178
def changed_attributes
  super.merge(mutations_from_mobility.changed_attributes)
end
changes() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 187
def changes
  super.merge(mutations_from_mobility.changes)
end
changes_applied() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 182
def changes_applied
  super
  mutations_from_mobility.finalize_changes
end
clear_attribute_changes(attr_names) click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 209
def clear_attribute_changes(attr_names)
  attr_names.each { |attr_name| mutations_from_mobility.restore_attribute!(attr_name) }
  super
end
clear_changes_information() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 204
def clear_changes_information
  @mutations_from_mobility = nil
  super
end
previous_changes() click to toggle source
Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 200
def previous_changes
  super.merge(mutations_from_mobility.previous_changes)
end

Private Instance Methods

mutations_from_mobility() click to toggle source
# File lib/mobility/plugins/active_model/dirty.rb, line 216
def mutations_from_mobility
  @mutations_from_mobility ||= MobilityMutationTracker.new(self)
end