Class: Jsapi::Meta::Schema::Numeric

Inherits:
Base show all
Includes:
Conversion
Defined in:
lib/jsapi/meta/schema/numeric.rb

Direct Known Subclasses

Integer, Number

Constant Summary

Constants included from Model::Attributes

Model::Attributes::DEFAULT_ARRAY, Model::Attributes::DEFAULT_HASH

Instance Attribute Summary

Attributes inherited from Base

#validations

Instance Method Summary collapse

Methods included from Conversion

#convert, included

Methods inherited from Base

#default, #default_value, #deprecated, #description, #enum, #enum=, #examples, #existence, #external_docs, #initialize, #nullable?, #omittable?, #title, #to_json_schema, #to_openapi, #type

Methods included from OpenAPI::Extensions

included

Methods inherited from Model::Base

#initialize, #inspect, #merge!, #reference?, #resolve

Methods included from Model::Attributes

#attribute, #attribute_names

Constructor Details

This class inherits a constructor from Jsapi::Meta::Schema::Base

Instance Method Details

#maximumObject

:attr: maximum The (exclusive) maximum.



12
# File 'lib/jsapi/meta/schema/numeric.rb', line 12

attribute :maximum, accessors: %i[reader]

#maximum=(value) ⇒ Object

:nodoc:



23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/jsapi/meta/schema/numeric.rb', line 23

def maximum=(value) # :nodoc:
  boundary = Boundary.from(value)

  add_validation(
    'maximum',
    Validation::Maximum.new(
      boundary.value,
      exclusive: boundary.exclusive?
    )
  )
  @maximum = boundary
end

#minimumObject

:attr: minimum The (exclusive) minimum.



17
# File 'lib/jsapi/meta/schema/numeric.rb', line 17

attribute :minimum, accessors: %i[reader]

#minimum=(value) ⇒ Object

:nodoc:



36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/jsapi/meta/schema/numeric.rb', line 36

def minimum=(value) # :nodoc:
  boundary = Boundary.from(value)

  add_validation(
    'minimum',
    Validation::Minimum.new(
      boundary.value,
      exclusive: boundary.exclusive?
    )
  )
  @minimum = boundary
end

#multiple_ofObject

:attr: multiple_of



21
# File 'lib/jsapi/meta/schema/numeric.rb', line 21

attribute :multiple_of, accessors: %i[reader]

#multiple_of=(value) ⇒ Object

:nodoc:



49
50
51
52
# File 'lib/jsapi/meta/schema/numeric.rb', line 49

def multiple_of=(value) # :nodoc:
  add_validation('multiple_of', Validation::MultipleOf.new(value))
  @multiple_of = value
end