class Bitfinex::Models::Model
Public Class Methods
new(data, fields, boolFields)
click to toggle source
# File lib/models/model.rb, line 4 def initialize (data, fields, boolFields) @fields = fields @boolFields = boolFields if data.kind_of?(Array) apply(self.class.unserialize(data)) elsif data.kind_of?(Hash) apply(data) end end
unserialize(data, fields, boolFields)
click to toggle source
# File lib/models/model.rb, line 39 def self.unserialize (data, fields, boolFields) obj = {} fields.each do |key, index| return if index.nil? if boolFields.include?(key) obj[key] = data[index] == 1 else obj[key] = data[index] end end return obj end
Public Instance Methods
apply(obj)
click to toggle source
# File lib/models/model.rb, line 31 def apply (obj) @fields.each do |key, index| return if index.nil? instance_variable_set("@#{key}", obj[key]) end end
serialize()
click to toggle source
# File lib/models/model.rb, line 15 def serialize arr = [] @fields.each do |key, index| return if index.nil? if @boolFields.include?(key) arr[index] = instance_variable_get("@#{key}") ? 1 : 0 else arr[index] = instance_variable_get("@#{key}") end end arr end