Sha256: b193fe47e2b56c434d91dffef5cac9ab13218e111817577ed7e6e8d7855886ee
Contents?: true
Size: 804 Bytes
Versions: 4
Compression:
Stored size: 804 Bytes
Contents
module Bitstampede module Entities class Base def self.setup_readers keys.each {|k| attr_reader k.to_sym } end def self.keys self.mappings.keys end def initialize(balance_hash) self.class.keys.each do |key| instance_variable_set("@#{key}", self.class.mappings[key].call(balance_hash[key.to_s].to_s)) end end def inspect inspect_string = "#<#{self.class}:#{self.object_id} " self.class.keys.each do |key| inspect_string << "#{key}: #{send(key).inspect} " end inspect_string << " >" inspect_string end def self.map_int ->(val) { val.to_i } end def self.map_decimal ->(val) { BigDecimal(val) } end end end end
Version data entries
4 entries across 4 versions & 1 rubygems