Module: Mongoid::Extensions::Hash::ClassMethods

Defined in:
build/mongoid-8.1/lib/mongoid/extensions/hash.rb

Instance Method Summary collapse

Instance Method Details

#mongoize(object) ⇒ Hash | nil

Turn the object from the ruby type we deal with to a Mongo friendly type.

Examples:

Mongoize the object.

Hash.mongoize([ 1, 2, 3 ])

Parameters:

  • object (Object)

    The object to mongoize.

Returns:

  • (Hash | nil)

    The object mongoized or nil.



225
226
227
228
229
230
231
232
233
# File 'build/mongoid-8.1/lib/mongoid/extensions/hash.rb', line 225

def mongoize(object)
  return if object.nil?
  if object.is_a?(Hash)
    # Need to use transform_values! which maintains the BSON::Document
    # instead of transform_values which always returns a hash. To do this,
    # we first need to dup the hash.
    object.dup.transform_values!(&:mongoize)
  end
end

#resizable?true

Can the size of this object change?

Examples:

Is the hash resizable?

{}.resizable?

Returns:

  • (true)

    true.



241
242
243
# File 'build/mongoid-8.1/lib/mongoid/extensions/hash.rb', line 241

def resizable?
  true
end