Sha256: ca42cb147f2a5c51b6eebea6762806d3ec9b00b412b9d2caaa3ce712056433a5

Contents?: true

Size: 468 Bytes

Versions: 1

Compression:

Stored size: 468 Bytes

Contents

# frozen_string_literal: true

require 'rom/schema'
require 'rom/http/types'

module ROM
  module HTTP
    class Schema < ROM::Schema
      # Customized output hash constructor which symbolizes keys
      # and optionally applies custom read-type coercions
      #
      # @api private
      def to_output_hash
        Types::Hash
          .schema(map { |attr| [attr.key, attr.to_read_type] }.to_h)
          .with_key_transform(&:to_sym)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rom-http-0.8.0 lib/rom/http/schema.rb