Sha256: 46d66d0c1c4f0cb86349e4052eee3f3039ff787c3bd97803b7a755e91420fa47

Contents?: true

Size: 251 Bytes

Versions: 7

Compression:

Stored size: 251 Bytes

Contents

# https://www.ruby-forum.com/topic/82661
class Hash
  alias :__fetch :[]

  def traverse(*path)
    path.inject(self) { |obj, item| obj.__fetch(item) || break }
  end

  def [](*args)
    (args.length > 1) ? traverse(*args) : __fetch(*args)
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
tla-sbuilder-0.3.9 lib/utils/hash_inject.rb
tla-sbuilder-0.3.8 lib/utils/hash_inject.rb
tla-sbuilder-0.3.7 lib/utils/hash_inject.rb
tla-sbuilder-0.3.4 lib/utils/hash_inject.rb
tla-sbuilder-0.2.2 lib/utils/hash_inject.rb
tla-sbuilder-0.2.1 lib/utils/hash_inject.rb
tla-sbuilder-0.1.0 lib/utils/hash_inject.rb