module SimplySerializable::Mixin

Public Class Methods

included(base) click to toggle source
# File lib/simply_serializable/mixin.rb, line 36
def self.included(base)
  base.include(Fingerprintable::Mixin)
  base.extend(ClassMethods)
end

Public Instance Methods

simply_serializable_id() click to toggle source
# File lib/simply_serializable/mixin.rb, line 56
def simply_serializable_id
  simply_serializer.id
end
simply_serialize(cache: {}, **options) click to toggle source
# File lib/simply_serializable/mixin.rb, line 41
def simply_serialize(cache: {}, **options)
  simply_serializer(cache: cache, **options).serialize
end
simply_serializer(cache: {}, **options) click to toggle source
# File lib/simply_serializable/mixin.rb, line 45
def simply_serializer(cache: {}, **options)
  Serializer.new(
    **self.class.simply_serializable_config.merge(
      options
    ).merge(
      cache: cache,
      object: self
    )
  )
end