Sha256: e81b841554a12743cd6f60c5a4d9aa12eab9e87e608e0ddd917bcea75ddb5bd0
Contents?: true
Size: 788 Bytes
Versions: 82
Compression:
Stored size: 788 Bytes
Contents
# frozen_string_literal: true require "active_support/core_ext/object/try" module ActiveModel module Type class Float < Value # :nodoc: include Helpers::Numeric def type :float end def type_cast_for_schema(value) return "::Float::NAN" if value.try(:nan?) case value when ::Float::INFINITY then "::Float::INFINITY" when -::Float::INFINITY then "-::Float::INFINITY" else super end end private def cast_value(value) case value when ::Float then value when "Infinity" then ::Float::INFINITY when "-Infinity" then -::Float::INFINITY when "NaN" then ::Float::NAN else value.to_f end end end end end
Version data entries
82 entries across 78 versions & 9 rubygems