Module: Mongoid::Extensions::Set::ClassMethods

Defined in:
lib/mongoid/extensions/set.rb

Instance Method Summary collapse

Instance Method Details

#demongoize(object) ⇒ Set

Convert the object from its mongo friendly ruby type to this type.

Examples:

Demongoize the object.

Set.demongoize([1, 2, 3])

Parameters:

  • object (Array)

    The object to demongoize.

Returns:

  • (Set)

    The set.



39
40
41
42
43
44
# File 'lib/mongoid/extensions/set.rb', line 39

def demongoize(object)
  case object
  when ::Set then object
  when ::Array then ::Set.new(object)
  end
end

#mongoize(object) ⇒ Array | nil

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

Examples:

Mongoize the object.

Set.mongoize(Set.new([1,2,3]))

Parameters:

  • object (Set)

    The object to mongoize.

Returns:

  • (Array | nil)

    The object mongoized or nil.



55
56
57
58
59
60
61
# File 'lib/mongoid/extensions/set.rb', line 55

def mongoize(object)
  return if object.nil?
  case object
  when ::Set then ::Array.mongoize(object.to_a).uniq
  when ::Array then ::Array.mongoize(object).uniq
  end
end