Sha256: 58c31e277eddee4a2a22b6971ac845b811e2c776227ccdbb4b9737329fd8c7b2

Contents?: true

Size: 310 Bytes

Versions: 17

Compression:

Stored size: 310 Bytes

Contents

class Hash
  def method_missing(m, *args, &block)
    if m.to_s =~ /(.*)=$/ # was assignment
      self[$1] = args[0]
    else
      fetch(m.to_s, nil)
    end
  end
  def recursive_merge(h)
    self.merge!(h) {|key, _old, _new| if _old.class == Hash then _old.recursive_merge(_new) else _new end  }
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
cxxproject-0.6.31 lib/cxxproject/ext/hash.rb
cxxproject-0.6.30 lib/cxxproject/ext/hash.rb
cxxproject-0.6.29 lib/cxxproject/ext/hash.rb
cxxproject-0.6.28 lib/cxxproject/ext/hash.rb
cxxproject-0.6.27 lib/cxxproject/ext/hash.rb
cxxproject-0.6.26 lib/cxxproject/ext/hash.rb
cxxproject-0.6.25 lib/cxxproject/ext/hash.rb
cxxproject-0.6.24 lib/cxxproject/ext/hash.rb
cxxproject-0.6.23 lib/cxxproject/ext/hash.rb
cxxproject-0.6.21 lib/cxxproject/ext/hash.rb
cxxproject-0.6.18 lib/cxxproject/ext/hash.rb
cxxproject-0.6.17 lib/cxxproject/ext/hash.rb
cxxproject-0.6.14 lib/cxxproject/ext/hash.rb
cxxproject-0.6.12 lib/cxxproject/ext/hash.rb
cxxproject-0.6.13 lib/cxxproject/ext/hash.rb
cxxproject-0.6.11 lib/cxxproject/ext/hash.rb
cxxproject-0.6.10 lib/cxxproject/ext/hash.rb