Class: Yield::SDK::Money

Inherits:
Object
  • Object
show all
Defined in:
lib/yield/sdk/types/money.rb

Class Method Summary collapse

Class Method Details

.from_payload(payload) ⇒ Object

Raises:

  • (ArgumentError)


8
9
10
11
12
13
# File 'lib/yield/sdk/types/money.rb', line 8

def self.from_payload(payload)
  m = payload.match(/^([A-Z]{3}) (-?\d+(?:\.\d+)?)$/)
  raise ArgumentError, "Invalid money: #{payload}" if m.nil?

  new(currency_code: m[1].to_sym, value: BigDecimal(m[2]))
end