Sha256: 7141d273e1c05e24bf57e4d6b77e5d83eeba304561364ea6daa395f02cf5328d
Contents?: true
Size: 618 Bytes
Versions: 4
Compression:
Stored size: 618 Bytes
Contents
module DuckPuncher module Hash # http://coryodaniel.com/index.php/2009/12/30/ruby-getting-deeply-nested-values-from-a-hash-in-one-line-of-code/ def seek(*_keys_) last_level = self sought_value = nil _keys_.each_with_index do |_key_, _idx_| if last_level.is_a?(Hash) && last_level.has_key?(_key_) if _idx_ + 1 == _keys_.length sought_value = last_level[_key_] else last_level = last_level[_key_] end else break end end sought_value end end end Hash.send(:include, DuckPuncher::Hash)
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
duck_puncher-0.0.6 | lib/duck_puncher/hash.rb |
duck_puncher-0.0.4 | lib/duck_puncher/hash.rb |
duck_puncher-0.0.3 | lib/duck_puncher/hash.rb |
duck_puncher-0.0.2 | lib/duck_puncher/hash.rb |