module Acfs::Resource::Attributes # @api public # # Float attribute type. Use it in your model as an attribute type: # # @example # class User < Acfs::Resource # attribute :name, :float # end # class Float < Base # @api public # # Cast given object to float. # # @param [Object] value Object to cast. # @return [Float] Casted object as float. # def cast_value(value) return 0.0 if value.blank? case value when ::Float then value when "Infinity" then ::Float::INFINITY when "-Infinity" then -::Float::INFINITY when "NaN" then ::Float::NAN else Float(value) end end end end