class Coinbase::Pro::APIObject
Response item abstract model
Public Class Methods
new(data)
click to toggle source
Calls superclass method
# File lib/coinbase/pro/api_object.rb, line 5 def initialize(data) super update(data) end
Public Instance Methods
format(var)
click to toggle source
# File lib/coinbase/pro/api_object.rb, line 15 def format(var) return if var.nil? # Looks like a number or currency if var =~ /^.{0,1}\s*[0-9,]*\.{0,1}[0-9]*$/ BigDecimal(var.gsub(/[^0-9\.\-]/, '')) else var end end
method_missing(method, *args, &blk)
click to toggle source
Calls superclass method
# File lib/coinbase/pro/api_object.rb, line 30 def method_missing(method, *args, &blk) format(self[method.to_s]) || super end
respond_to_missing?(method, include_all = false)
click to toggle source
Calls superclass method
# File lib/coinbase/pro/api_object.rb, line 34 def respond_to_missing?(method, include_all = false) self.key?(method.to_s) || super end
size()
click to toggle source
This is common enough that we should override the hash method
Calls superclass method
# File lib/coinbase/pro/api_object.rb, line 26 def size format(self['size']) || super end
update(data)
click to toggle source
# File lib/coinbase/pro/api_object.rb, line 10 def update(data) return if data.nil? data.each { |key, val| self[key] = val } if data.is_a?(Hash) end