Sha256: a33d33fe793c9f08ff3907680bed732626fcd98cb8f8fc13a21256b506fa9583
Contents?: true
Size: 541 Bytes
Versions: 1
Compression:
Stored size: 541 Bytes
Contents
module Brat # Converts hashes to the objects. class ObjectifiedHash # Creates a new ObjectifiedHash object. def initialize(hash) @hash = hash @data = hash.inject({}) do |data, (key,value)| value = ObjectifiedHash.new(value) if value.is_a? Hash data[key.to_s] = value data end end def to_hash @hash end alias_method :to_h, :to_hash # Delegate to ObjectifiedHash. def method_missing(key) @data.key?(key.to_s) ? @data[key.to_s] : nil end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
brat-0.1.1 | lib/brat/objectified_hash.rb |