Sha256: 386521ddd77619f97f3fa6dcf56ca1199ff3b0e7af4ca65402dec446ec8e69c1

Contents?: true

Size: 768 Bytes

Versions: 2

Compression:

Stored size: 768 Bytes

Contents

# frozen_string_literal: true

require 'dry/types/coercions/json'

module Dry
  module Types
    register('json.nil') do
      self['nominal.nil'].constructor(Coercions::JSON.method(:to_nil))
    end

    register('json.date') do
      self['nominal.date'].constructor(Coercions::JSON.method(:to_date))
    end

    register('json.date_time') do
      self['nominal.date_time'].constructor(Coercions::JSON.method(:to_date_time))
    end

    register('json.time') do
      self['nominal.time'].constructor(Coercions::JSON.method(:to_time))
    end

    register('json.decimal') do
      self['nominal.decimal'].constructor(Coercions::JSON.method(:to_decimal))
    end

    register('json.array') { self['array'] }

    register('json.hash') { self['hash'] }
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
dry-types-1.0.1 lib/dry/types/json.rb
dry-types-1.0.0 lib/dry/types/json.rb