Módulo: Mongoid::Criteria::Queryable::Extensions::Numeric::ClassMethods
- Definido em:
- lib/mongoid/criteria/queryable/extentions/numeric.rb
Recolhimento do Resumo do método de instância
-
#__numeric__(objeto) ➤ Objeto
privado
Obtenha o objeto como um número.
-
#evolve(objeto) ➤ inteiro
Evolua o objeto para um número inteiro.
Detalhes do método de instância
#__numeric__(objeto) ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Obtenha o objeto como um número.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/mongoid/criteria/queryable/extentions/numeric.rb', linha 42 def __numeric__(objeto) str = objeto.to_s aumentar ArgumentError se str.vazio? # Esses requisitos parecem um pouco estranhos, mas são explicitamente especificados nos testes, # então somos obrigados a mantê-los por enquanto. (Este código foi reescrito a partir de uma linha # regex, devido a preocupações de segurança com um regex polinômio sendo usado em fluxo não controlado # data). str = str.dividir se str.end_with?('.') Método 0 se str.vazio? Resultado = começar Inteiro(str) salvar StandardError Float(objeto) end inteiro = Resultado.to_i (inteiro == Resultado) ? inteiro : Resultado end |
#evolve(objeto) ➤ inteiro
Evolua o objeto para um número inteiro.
72 73 74 75 76 77 78 |
# File 'lib/mongoid/criteria/queryable/extentions/numeric.rb', linha 72 def evolua(objeto) __evolve__(objeto) fazer |obj| __numeric__(obj) salvar StandardError obj end end |