Sha256: 0c925c440b0ea9dcf826de63cb81370ab00f7744bc9ecb19f68238d053e86bf3
Contents?: true
Size: 566 Bytes
Versions: 4
Compression:
Stored size: 566 Bytes
Contents
require 'sugar-high/arguments' class Hash # http://www.dweebd.com/ruby/hash-key-rewrite/ def rewrite mapping inject({}) do |rewritten_hash, (original_key, value)| rewritten_hash[mapping.fetch(original_key, original_key)] = value rewritten_hash end end def hash_revert r = Hash.new {|h,k| h[k] = []} each {|k,v| r[v] << k} r end def try_keys *keys option = last_option keys keys.flatten.each do |key| return self[key] if self[key] end return option[:default] if option[:default] nil end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
sugar-high-0.7.3 | lib/sugar-high/hash.rb |
sugar-high-0.7.2 | lib/sugar-high/hash.rb |
sugar-high-0.7.1 | lib/sugar-high/hash.rb |
sugar-high-0.7.0 | lib/sugar-high/hash.rb |