模块:Mongoid::Criteria::Queryable::Extensions::Object

定义于:
lib/mongoid/criteria/queryable/extensions/ 对象.rb

Overview

将查询类型转换行为添加到 Object 类。

在命名空间下定义

模块: 类方法

实例方法摘要折叠

实例方法详细信息

# __add__ (对象) ⇒对象

使用添加策略合并两个对象。

例子:

将对象添加到数组中。

[ 1, 2, 3 ].__add__(4)

参数:

  • 对象 ( Object )

    要添加的对象。

返回:

  • ( Object )

    添加的结果。



20
21
22
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 20

def __add__(对象)
  (对象 == self) ? self : [ self, 对象 ].展平.uniq
end

#__add_from_array__(array) ⇒ Array

将此对象合并到提供的大量中。

例子:

将对象合并到数组中。

4.__add_from_array__([ 1, 2 ])

参数:

  • 阵列 ( Array )

    要添加到的大量。

返回:

  • ( Array )

    合并的对象。



32
33
34
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 32

def __add_from_array__(阵列)
  阵列.concat(阵列(self)).uniq
end

#__array__Array

以数组形式获取对象。

例子:

以数组形式获取对象。

4.__array__

返回:

  • ( Array )

    包装的对象。



111
112
113
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 111

def __array__
  [ self ]
end

# __deep_copy__ ">对象

深度复制对象。 这是为了实现 API 兼容性,但需要被覆盖。

例子:

深度复制对象。

1.__deep_copy__

返回:



103
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 103

def __deep_copy__ self end

# __expand_complex__对象

获取展开的对象。

例子:

展开对象。

obj.__expand_complex__

返回:



121
122
123
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 121

def __expand_complex__
  self
end

# __intersect__ (对象) ⇒数组

使用相交策略合并两个对象。

例子:

将对象添加到数组中。

[ 1, 2, 3 ].__intersect__(4)

参数:

  • 对象 ( Object )

    要相交的对象。

返回:

  • ( Array )

    相交的结果。



44
45
46
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 44

def __intersect__(对象)
  对象.__intersect_from_object__(self)
end

# __intersect_from_array__ (大量) ⇒数组

将此对象合并到提供的大量中。

例子:

将对象合并到数组中。

4.__intersect_from_array__([ 1, 2 ])

参数:

  • 阵列 ( Array )

    要相交的大量。

返回:

  • ( Array )

    合并的对象。



56
57
58
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 56

def __intersect_from_array__(阵列)
  阵列  阵列(self)
end

# __intersect_from_object__ (对象) ⇒数组

将此对象合并到提供的大量中。

例子:

将对象合并到数组中。

4.__intersect_from_object__([ 1, 2 ])

参数:

  • 对象 ( Object )

    要相交的值。

返回:

  • ( Array )

    合并的对象。



68
69
70
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 68

def __intersect_from_object__(对象)
  阵列(对象)  阵列(self)
end

# __union__ (object) ⇒数组

使用并集策略合并两个对象。

例子:

将对象添加到数组中。

[ 1, 2, 3 ].__union__(4)

参数:

  • 对象 ( Object )

    要联合的对象。

返回:

  • ( Array )

    并集的结果。



80
81
82
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 80

def __union__(对象)
  对象.__union_from_object__(self)
end

# __union_from_object__ (object) ⇒数组

将此对象合并到提供的大量中。

例子:

将对象合并到数组中。

4.__union_from_object__([ 1, 2 ])

参数:

  • 对象 ( Object )

    要合并到的值。

返回:

  • ( Array )

    合并的对象。



92
93
94
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 92

def __union_from_object__(对象)
  (阵列(对象) + 阵列(self)).uniq
end

# regexp?false

已弃用。

对象是否为正则表达式。

例子:

对象是正则表达式吗?

obj.regexp?

返回:

  • ( false )

    始终为 false。



132
133
134
# File 'lib/mongoid/criteria/queryable/extensions/ 对象.rb', line 132

def regexp?
  false
end