Module: Mongoid::Criteria::Queryable::Extensions::Object
- Defined in:
- lib/mongoid/criteria/queryable/extensions/object.rb
Overview
Adds query type-casting behavior to Object class.
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
-
#__add__(object) ⇒ Object
Combine the two objects using the add strategy.
-
#__add_from_array__(array) ⇒ Array
Merge this object into the provided array.
-
#__array__ ⇒ Array
Get the object as an array.
-
#__deep_copy__ ⇒ Object
Deep copy the object.
-
#__expand_complex__ ⇒ Object
Get the object as expanded.
-
#__intersect__(object) ⇒ Array
Combine the two objects using the intersect strategy.
-
#__intersect_from_array__(array) ⇒ Array
Merge this object into the provided array.
-
#__intersect_from_object__(object) ⇒ Array
Merge this object into the provided array.
-
#__union__(object) ⇒ Array
Combine the two objects using the union strategy.
-
#__union_from_object__(object) ⇒ Array
Merge this object into the provided array.
- #regexp? ⇒ false deprecated Deprecated.
Instance Method Details
#__add__(object) ⇒ Object
Combine the two objects using the add strategy.
17 18 19 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 17 def __add__(object) (object == self) ? self : [ self, object ].flatten.uniq end |
#__add_from_array__(array) ⇒ Array
Merge this object into the provided array.
29 30 31 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 29 def __add_from_array__(array) array.concat(Array(self)).uniq end |
#__array__ ⇒ Array
Get the object as an array.
110 111 112 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 110 def __array__ [ self ] end |
#__deep_copy__ ⇒ Object
Deep copy the object. This is for API compatibility, but needs to be overridden.
100 101 102 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 100 def __deep_copy__ self end |
#__expand_complex__ ⇒ Object
Get the object as expanded.
120 121 122 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 120 def self end |
#__intersect__(object) ⇒ Array
Combine the two objects using the intersect strategy.
41 42 43 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 41 def __intersect__(object) object.__intersect_from_object__(self) end |
#__intersect_from_array__(array) ⇒ Array
Merge this object into the provided array.
53 54 55 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 53 def __intersect_from_array__(array) array & Array(self) end |
#__intersect_from_object__(object) ⇒ Array
Merge this object into the provided array.
65 66 67 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 65 def __intersect_from_object__(object) Array(object) & Array(self) end |
#__union__(object) ⇒ Array
Combine the two objects using the union strategy.
77 78 79 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 77 def __union__(object) object.__union_from_object__(self) end |
#__union_from_object__(object) ⇒ Array
Merge this object into the provided array.
89 90 91 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 89 def __union_from_object__(object) (Array(object) + Array(self)).uniq end |
#regexp? ⇒ false
Is the object a regex.
131 132 133 |
# File 'lib/mongoid/criteria/queryable/extensions/object.rb', line 131 def regexp? false end |