Class: Enumy::Rails::ActiveJob::Serializers::EnumSerializer

Inherits:
ActiveJob::Serializers::ObjectSerializer
  • Object
show all
Defined in:
lib/enumy/rails/active_job/serializers/enum_serializer.rb

Instance Method Summary collapse

Instance Method Details

#deserialize(hash) ⇒ Object



13
14
15
# File 'lib/enumy/rails/active_job/serializers/enum_serializer.rb', line 13

def deserialize(hash)
  hash[:class].safe_constantize&.find_by(key: hash[:key].to_sym)
end

#serialize(enum) ⇒ Object



9
10
11
# File 'lib/enumy/rails/active_job/serializers/enum_serializer.rb', line 9

def serialize(enum)
  super({ class: enum.class.name, key: enum.key.to_s })
end

#serialize?(value) ⇒ Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/enumy/rails/active_job/serializers/enum_serializer.rb', line 17

def serialize?(value)
  value.is_a?(klass)
end