Sha256: 8efefcc4f2688f2b57f5c9ae2cc905f0733d21aba4ec2e1d4d2ff7aa090c0b16

Contents?: true

Size: 866 Bytes

Versions: 6

Compression:

Stored size: 866 Bytes

Contents

require 'core_ext/hash_with_indifferent_access'

class Hash

  # Returns an <tt>CoreExt::HashWithIndifferentAccess</tt> out of its receiver:
  #
  #   { a: 1 }.with_indifferent_access['a'] # => 1
  def with_indifferent_access
    CoreExt::HashWithIndifferentAccess.new(self)
  end

  # Called when object is nested under an object that receives
  # #with_indifferent_access. This method will be called on the current object
  # by the enclosing object and is aliased to #with_indifferent_access by
  # default. Subclasses of Hash may overwrite this method to return +self+ if
  # converting to an <tt>CoreExt::HashWithIndifferentAccess</tt> would not be
  # desirable.
  #
  #   b = { b: 1 }
  #   { a: b }.with_indifferent_access['a'] # calls b.nested_under_indifferent_access
  #   # => {"b"=>1}
  alias nested_under_indifferent_access with_indifferent_access
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
core_ext-0.0.6 lib/core_ext/hash/indifferent_access.rb
core_ext-0.0.5 lib/core_ext/hash/indifferent_access.rb
core_ext-0.0.4 lib/core_ext/hash/indifferent_access.rb
core_ext-0.0.3 lib/core_ext/hash/indifferent_access.rb
core_ext-0.0.2 lib/core_ext/hash/indifferent_access.rb
core_ext-0.0.1 lib/core_ext/hash/indifferent_access.rb