Sha256: 1a3e3bf52936e3fed15d5e996389d4a4bd24d51536927461548078e4b64aeef7

Contents?: true

Size: 426 Bytes

Versions: 3

Compression:

Stored size: 426 Bytes

Contents

module Kanade
  module Converter
    class Dto < Base
      Engine.register_converter!(self)

      def serialize(term, field_info)
        term
      end

      def deserialize(term, field_info)
        return nil if term.nil?
        raise NotSupportedError.new('DTO-based field only can be filled with nil / respective DTO object') unless term.is_a?(field_info.options[:of])
        return term
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
kanade-0.1.1 lib/kanade/converter/dto.rb
kanade-0.1.0 lib/kanade/converter/dto.rb
kanade-0.1.0.beta2 lib/kanade/converter/dto.rb