instance method _enum_methods_module

Ruby on Rails 4.2.9

Since v4.1.16 Private

Available in: v4.1.16 v4.2.9 v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

_enum_methods_module()

No documentation comment.

Source
# File activerecord/lib/active_record/enum.rb, line 138
      def _enum_methods_module
        @_enum_methods_module ||= begin
          mod = Module.new do
            private
              def save_changed_attribute(attr_name, old)
                if (mapping = self.class.defined_enums[attr_name.to_s])
                  value = _read_attribute(attr_name)
                  if attribute_changed?(attr_name)
                    if mapping[old] == value
                      clear_attribute_changes([attr_name])
                    end
                  else
                    if old != value
                      set_attribute_was(attr_name, mapping.key(old))
                    end
                  end
                else
                  super
                end
              end
          end
          include mod
          mod
        end
      end

Defined in activerecord/lib/active_record/enum.rb line 138 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveRecord::Enum

Type at least 2 characters to search.

↑↓ navigate · open · esc close