模块:Mongoid::Criteria::Queryable::Extensions::Numeric::ClassMethods

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

实例方法摘要折叠

实例方法详细信息

# __numeric__ (object) ⇒对象

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

以数值形式获取对象。

例子:

获取数值对象。

Object.__numeric__("1.442")

参数:

  • 对象 ( Object )

    要转换的对象。

返回:

  • ( Object )

    转换后的数字。

引发:

  • ( ArgumentError )


46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/mongoid/criteria/queryable/extensions/numeric.rb', line 46

def __numeric__(对象)
  str = 对象.to_s
  提高 ArgumentError if str.空?

  # 这些要求看起来有点奇怪,但它们在测试中明确指定,
  # 所以我们现在有义务保留它们。 (此代码重写自单行
  # regex,出于安全考虑,对不受控制的 regex 使用多项式 regex
  # data).

  str = str.印章 if str.end_with?('  ')
  return 0 if str.空?

  结果 = 整型(str) 救援 Float(对象)

  整型 = 结果.to_i
  整型 == 结果 ? 整型 : 结果
end

# describe (对象) ⇒ Integer

将对象演进为整数。

例子:

演进为整数。

Integer.evolve("1")

参数:

  • 对象 ( Object )

    要进化的对象。

返回:

  • ( Integer )

    进化后的对象。



72
73
74
75
76
# File 'lib/mongoid/criteria/queryable/extensions/numeric.rb', line 72

def 发展(对象)
  __evolve__(对象) do |obj|
    __numeric__(obj) 救援 obj
  end
end