Class: Io::Flow::V0::Models::RoundingMethod

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(value) ⇒ RoundingMethod

Returns a new instance of RoundingMethod.



20152
20153
20154
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20152

def initialize(value)
  @value = HttpClient::Preconditions.assert_class('value', value, String)
end

Instance Attribute Details

#valueObject (readonly)

Returns the value of attribute value.



20150
20151
20152
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20150

def value
  @value
end

Class Method Details

.ALLObject



20172
20173
20174
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20172

def RoundingMethod.ALL
  @@all ||= [RoundingMethod.up, RoundingMethod.down, RoundingMethod.nearest]
end

.apply(value) ⇒ Object

Returns the instance of RoundingMethod for this value, creating a new instance for an unknown value



20157
20158
20159
20160
20161
20162
20163
20164
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20157

def RoundingMethod.apply(value)
  if value.instance_of?(RoundingMethod)
    value
  else
    HttpClient::Preconditions.assert_class_or_nil('value', value, String)
    value.nil? ? nil : (from_string(value) || RoundingMethod.new(value))
  end
end

.downObject

Round down to the specified rounding.value



20182
20183
20184
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20182

def RoundingMethod.down
  @@_down ||= RoundingMethod.new('down')
end

.from_string(value) ⇒ Object

Returns the instance of RoundingMethod for this value, or nil if not found



20167
20168
20169
20170
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20167

def RoundingMethod.from_string(value)
  HttpClient::Preconditions.assert_class('value', value, String)
  RoundingMethod.ALL.find { |v| v.value == value }
end

.nearestObject

Round to the nearest specified rounding.value. If equidistant, will round up.



20187
20188
20189
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20187

def RoundingMethod.nearest
  @@_nearest ||= RoundingMethod.new('nearest')
end

.upObject

Round up to the specified rounding.value



20177
20178
20179
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20177

def RoundingMethod.up
  @@_up ||= RoundingMethod.new('up')
end

Instance Method Details

#to_hashObject



20191
20192
20193
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20191

def to_hash
  value
end