Sha256: 061c61b8d1294b5916aa79f3ca734b928069939e917f791211b84ada5fb95571

Contents?: true

Size: 427 Bytes

Versions: 8

Compression:

Stored size: 427 Bytes

Contents

class BMC::MiniModelSerializer::Serializer < BMC::MiniModelSerializer::Serialize
  def attributes
    raise NotImplementedError
  end

  def call
    serialize attributes.map { |k| [k, send(k)] }.to_h
  end

  private

  def method_missing(m, *args)
    if respond_to_missing?(m)
      object.send(m, *args)
    else
      super
    end
  end

  def respond_to_missing?(m, *)
    super || object.respond_to?(m, true)
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
bmc-1.3.2 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.3.1 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.3.0 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.2.1 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.2.0 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.1.0 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.0.1 app/libs/bmc/mini_model_serializer/serializer.rb
bmc-1.0.0 app/libs/bmc/mini_model_serializer/serializer.rb