class MstdnIvory::DotAccessableHash

This class inherit hash. The value is accessed by key name method:

dah = DotAccessableHash.new
dah['strkey'] = 'strvalue'
dah[:symkey] = :symkey
dah.strkey # => "strvalue"
dah.symkey # => :symkey

Public Instance Methods

_merge(obj) click to toggle source
# File lib/mstdn_ivory/dot_accessable_hash.rb, line 15
def _merge(obj)
  dah = DotAccessableHash.new
  obj.each do |key, value|
    dah[key] = value.kind_of?(Hash) ? _merge(value) : value
  end
  dah
end
merge(obj) click to toggle source
Calls superclass method
# File lib/mstdn_ivory/dot_accessable_hash.rb, line 10
def merge(obj)
  super unless obj.kind_of? Hash
  _merge(obj)
end
method_missing(name) click to toggle source
Calls superclass method
# File lib/mstdn_ivory/dot_accessable_hash.rb, line 23
def method_missing(name)
  super unless self.has_key?(name) || self.has_key?(name.to_s)
  self[name.to_s] || self[name]
end
respond_to_missing?(name) click to toggle source
# File lib/mstdn_ivory/dot_accessable_hash.rb, line 28
def respond_to_missing?(name)
  return self.has_key?(name) || self.has_key?(name.to_s)
end