Class: Attributor::Float

Inherits:
Object
  • Object
show all
Includes:
Numeric
Defined in:
lib/attributor/types/float.rb

Class Method Summary collapse

Methods included from Type

get_memoized_collection_class, set_memoized_collection_class

Class Method Details

.example(_context = nil, options: {}) ⇒ Object



13
14
15
16
17
18
# File 'lib/attributor/types/float.rb', line 13

def self.example(_context = nil, options: {})
  min = options[:min].to_f || 0.0
  max = options[:max].to_f || Math.PI

  rand * (max - min) + min
end

.json_schema_typeObject



27
28
29
# File 'lib/attributor/types/float.rb', line 27

def self.json_schema_type
  :number
end

.load(value, context = Attributor::DEFAULT_ROOT_CONTEXT, **options) ⇒ Object



20
21
22
23
24
25
# File 'lib/attributor/types/float.rb', line 20

def self.load(value, context = Attributor::DEFAULT_ROOT_CONTEXT, **options)
  return Float(value + '0') if value.is_a?(::String) && value.end_with?('.')
  Float(value)
rescue TypeError
  super
end

.native_typeObject



9
10
11
# File 'lib/attributor/types/float.rb', line 9

def self.native_type
  ::Float
end