module BetfairApiNgRails::Api::Data::Concerns::Hashable

Public Instance Methods

to_hash() click to toggle source
# File lib/betfair_api_ng_rails/api/data/concerns/hashable.rb, line 8
def to_hash
  call_hashalator
end
to_param() click to toggle source
# File lib/betfair_api_ng_rails/api/data/concerns/hashable.rb, line 12
def to_param
  call_hashalator true
end

Private Instance Methods

attributes_hash() click to toggle source
# File lib/betfair_api_ng_rails/api/data/concerns/hashable.rb, line 22
def attributes_hash
  self.class.to_hash_attrs.each_with_object({}) do |a, h|
    key = get_attr_key(a)
    val = get_attr_value(key)
    h[get_attr_key(key)] = val unless val.nil?
  end
end
call_hashalator(for_param = false) click to toggle source
# File lib/betfair_api_ng_rails/api/data/concerns/hashable.rb, line 18
def call_hashalator(for_param = false)
  BetfairApiNgRails::Api::Hashalator.new(attributes_hash, for_param).to_hash
end
get_attr_key(attrib) click to toggle source
# File lib/betfair_api_ng_rails/api/data/concerns/hashable.rb, line 34
def get_attr_key(attrib)
  attrib.is_a?(Hash) ? attrib.keys.first : attrib
end
get_attr_value(attrib) click to toggle source
# File lib/betfair_api_ng_rails/api/data/concerns/hashable.rb, line 30
def get_attr_value(attrib)
  self.send attrib
end